      module mo_lu_factor
      use chem_mods, only: veclen
      private
      public :: lu_fac
      contains
      subroutine lu_fac01( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1) = 1._r8 / lu(k,1)
         lu(k,2) = 1._r8 / lu(k,2)
         lu(k,3) = 1._r8 / lu(k,3)
         lu(k,4) = 1._r8 / lu(k,4)
         lu(k,5) = 1._r8 / lu(k,5)
         lu(k,6) = 1._r8 / lu(k,6)
         lu(k,7) = 1._r8 / lu(k,7)
         lu(k,8) = 1._r8 / lu(k,8)
         lu(k,9) = 1._r8 / lu(k,9)
         lu(k,10) = 1._r8 / lu(k,10)
         lu(k,11) = 1._r8 / lu(k,11)
         lu(k,12) = 1._r8 / lu(k,12)
         lu(k,13) = 1._r8 / lu(k,13)
         lu(k,14) = 1._r8 / lu(k,14)
         lu(k,15) = 1._r8 / lu(k,15)
         lu(k,16) = 1._r8 / lu(k,16)
         lu(k,17) = 1._r8 / lu(k,17)
         lu(k,18) = 1._r8 / lu(k,18)
         lu(k,19) = 1._r8 / lu(k,19)
         lu(k,20) = 1._r8 / lu(k,20)
         lu(k,21) = 1._r8 / lu(k,21)
         lu(k,22) = 1._r8 / lu(k,22)
         lu(k,23) = 1._r8 / lu(k,23)
         lu(k,24) = 1._r8 / lu(k,24)
         lu(k,25) = 1._r8 / lu(k,25)
         lu(k,26) = 1._r8 / lu(k,26)
         lu(k,27) = 1._r8 / lu(k,27)
         lu(k,28) = 1._r8 / lu(k,28)
         lu(k,29) = 1._r8 / lu(k,29)
         lu(k,30) = 1._r8 / lu(k,30)
         lu(k,31) = 1._r8 / lu(k,31)
         lu(k,32) = 1._r8 / lu(k,32)
         lu(k,33) = 1._r8 / lu(k,33)
         lu(k,39) = 1._r8 / lu(k,39)
         lu(k,45) = 1._r8 / lu(k,45)
         lu(k,46) = 1._r8 / lu(k,46)
         lu(k,47) = lu(k,47) * lu(k,46)
         lu(k,48) = lu(k,48) * lu(k,46)
         lu(k,2131) = lu(k,2131) - lu(k,47) * lu(k,2118)
         lu(k,2143) = lu(k,2143) - lu(k,48) * lu(k,2118)
         lu(k,49) = 1._r8 / lu(k,49)
         lu(k,50) = lu(k,50) * lu(k,49)
         lu(k,51) = lu(k,51) * lu(k,49)
         lu(k,1719) = lu(k,1719) - lu(k,50) * lu(k,1590)
         lu(k,1730) = lu(k,1730) - lu(k,51) * lu(k,1590)
         lu(k,52) = 1._r8 / lu(k,52)
         lu(k,53) = lu(k,53) * lu(k,52)
         lu(k,54) = lu(k,54) * lu(k,52)
         lu(k,1719) = lu(k,1719) - lu(k,53) * lu(k,1591)
         lu(k,1728) = lu(k,1728) - lu(k,54) * lu(k,1591)
         lu(k,55) = 1._r8 / lu(k,55)
         lu(k,56) = lu(k,56) * lu(k,55)
         lu(k,57) = lu(k,57) * lu(k,55)
         lu(k,58) = lu(k,58) * lu(k,55)
         lu(k,1672) = lu(k,1672) - lu(k,56) * lu(k,1592)
         lu(k,1719) = lu(k,1719) - lu(k,57) * lu(k,1592)
         lu(k,1730) = lu(k,1730) - lu(k,58) * lu(k,1592)
         lu(k,59) = 1._r8 / lu(k,59)
         lu(k,60) = lu(k,60) * lu(k,59)
         lu(k,61) = lu(k,61) * lu(k,59)
         lu(k,1561) = lu(k,1561) - lu(k,60) * lu(k,1557)
         lu(k,1570) = lu(k,1570) - lu(k,61) * lu(k,1557)
         lu(k,1668) = - lu(k,60) * lu(k,1593)
         lu(k,1718) = - lu(k,61) * lu(k,1593)
      end do
      end subroutine lu_fac01
      subroutine lu_fac02( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,62) = 1._r8 / lu(k,62)
         lu(k,63) = lu(k,63) * lu(k,62)
         lu(k,64) = lu(k,64) * lu(k,62)
         lu(k,663) = lu(k,663) - lu(k,63) * lu(k,662)
         lu(k,668) = - lu(k,64) * lu(k,662)
         lu(k,2042) = - lu(k,63) * lu(k,2023)
         lu(k,2106) = lu(k,2106) - lu(k,64) * lu(k,2023)
         lu(k,65) = 1._r8 / lu(k,65)
         lu(k,66) = lu(k,66) * lu(k,65)
         lu(k,67) = lu(k,67) * lu(k,65)
         lu(k,173) = lu(k,173) - lu(k,66) * lu(k,172)
         lu(k,176) = lu(k,176) - lu(k,67) * lu(k,172)
         lu(k,2147) = lu(k,2147) - lu(k,66) * lu(k,2145)
         lu(k,2170) = lu(k,2170) - lu(k,67) * lu(k,2145)
         lu(k,68) = 1._r8 / lu(k,68)
         lu(k,69) = lu(k,69) * lu(k,68)
         lu(k,70) = lu(k,70) * lu(k,68)
         lu(k,579) = lu(k,579) - lu(k,69) * lu(k,577)
         lu(k,582) = lu(k,582) - lu(k,70) * lu(k,577)
         lu(k,1700) = lu(k,1700) - lu(k,69) * lu(k,1594)
         lu(k,1719) = lu(k,1719) - lu(k,70) * lu(k,1594)
         lu(k,71) = 1._r8 / lu(k,71)
         lu(k,72) = lu(k,72) * lu(k,71)
         lu(k,73) = lu(k,73) * lu(k,71)
         lu(k,400) = lu(k,400) - lu(k,72) * lu(k,399)
         lu(k,404) = lu(k,404) - lu(k,73) * lu(k,399)
         lu(k,1962) = lu(k,1962) - lu(k,72) * lu(k,1957)
         lu(k,1994) = lu(k,1994) - lu(k,73) * lu(k,1957)
         lu(k,74) = 1._r8 / lu(k,74)
         lu(k,75) = lu(k,75) * lu(k,74)
         lu(k,78) = lu(k,78) - lu(k,75) * lu(k,76)
         lu(k,1427) = lu(k,1427) - lu(k,75) * lu(k,1410)
         lu(k,1777) = lu(k,1777) - lu(k,75) * lu(k,1736)
         lu(k,1818) = lu(k,1818) - lu(k,75) * lu(k,1793)
         lu(k,77) = 1._r8 / lu(k,77)
         lu(k,78) = lu(k,78) * lu(k,77)
         lu(k,1427) = lu(k,1427) - lu(k,78) * lu(k,1411)
         lu(k,1567) = lu(k,1567) - lu(k,78) * lu(k,1558)
         lu(k,1777) = lu(k,1777) - lu(k,78) * lu(k,1737)
         lu(k,1818) = lu(k,1818) - lu(k,78) * lu(k,1794)
         lu(k,79) = 1._r8 / lu(k,79)
         lu(k,80) = lu(k,80) * lu(k,79)
         lu(k,764) = lu(k,764) - lu(k,80) * lu(k,761)
         lu(k,908) = lu(k,908) - lu(k,80) * lu(k,904)
         lu(k,1339) = lu(k,1339) - lu(k,80) * lu(k,1332)
         lu(k,1543) = lu(k,1543) - lu(k,80) * lu(k,1522)
         lu(k,2131) = lu(k,2131) - lu(k,80) * lu(k,2119)
         lu(k,86) = 1._r8 / lu(k,86)
         lu(k,87) = lu(k,87) * lu(k,86)
         lu(k,88) = lu(k,88) * lu(k,86)
         lu(k,89) = lu(k,89) * lu(k,86)
         lu(k,90) = lu(k,90) * lu(k,86)
         lu(k,91) = lu(k,91) * lu(k,86)
         lu(k,1596) = lu(k,1596) - lu(k,87) * lu(k,1595)
         lu(k,1597) = lu(k,1597) - lu(k,88) * lu(k,1595)
         lu(k,1639) = lu(k,1639) - lu(k,89) * lu(k,1595)
         lu(k,1719) = lu(k,1719) - lu(k,90) * lu(k,1595)
         lu(k,1728) = lu(k,1728) - lu(k,91) * lu(k,1595)
         lu(k,92) = 1._r8 / lu(k,92)
         lu(k,93) = lu(k,93) * lu(k,92)
         lu(k,94) = lu(k,94) * lu(k,92)
         lu(k,95) = lu(k,95) * lu(k,92)
         lu(k,1634) = - lu(k,93) * lu(k,1596)
         lu(k,1694) = lu(k,1694) - lu(k,94) * lu(k,1596)
         lu(k,1728) = lu(k,1728) - lu(k,95) * lu(k,1596)
         lu(k,96) = 1._r8 / lu(k,96)
         lu(k,97) = lu(k,97) * lu(k,96)
         lu(k,98) = lu(k,98) * lu(k,96)
         lu(k,99) = lu(k,99) * lu(k,96)
         lu(k,100) = lu(k,100) * lu(k,96)
         lu(k,1633) = lu(k,1633) - lu(k,97) * lu(k,1597)
         lu(k,1636) = lu(k,1636) - lu(k,98) * lu(k,1597)
         lu(k,1719) = lu(k,1719) - lu(k,99) * lu(k,1597)
         lu(k,1728) = lu(k,1728) - lu(k,100) * lu(k,1597)
         lu(k,101) = 1._r8 / lu(k,101)
         lu(k,102) = lu(k,102) * lu(k,101)
         lu(k,103) = lu(k,103) * lu(k,101)
         lu(k,104) = lu(k,104) * lu(k,101)
         lu(k,1561) = lu(k,1561) - lu(k,102) * lu(k,1559)
         lu(k,1569) = lu(k,1569) - lu(k,103) * lu(k,1559)
         lu(k,1570) = lu(k,1570) - lu(k,104) * lu(k,1559)
         lu(k,1668) = lu(k,1668) - lu(k,102) * lu(k,1598)
         lu(k,1717) = lu(k,1717) - lu(k,103) * lu(k,1598)
         lu(k,1718) = lu(k,1718) - lu(k,104) * lu(k,1598)
         lu(k,105) = 1._r8 / lu(k,105)
         lu(k,106) = lu(k,106) * lu(k,105)
         lu(k,107) = lu(k,107) * lu(k,105)
         lu(k,108) = lu(k,108) * lu(k,105)
         lu(k,1570) = lu(k,1570) - lu(k,106) * lu(k,1560)
         lu(k,1571) = lu(k,1571) - lu(k,107) * lu(k,1560)
         lu(k,1580) = lu(k,1580) - lu(k,108) * lu(k,1560)
         lu(k,1718) = lu(k,1718) - lu(k,106) * lu(k,1599)
         lu(k,1719) = lu(k,1719) - lu(k,107) * lu(k,1599)
         lu(k,1728) = lu(k,1728) - lu(k,108) * lu(k,1599)
         lu(k,114) = 1._r8 / lu(k,114)
         lu(k,115) = lu(k,115) * lu(k,114)
         lu(k,116) = lu(k,116) * lu(k,114)
         lu(k,117) = lu(k,117) * lu(k,114)
         lu(k,118) = lu(k,118) * lu(k,114)
         lu(k,119) = lu(k,119) * lu(k,114)
         lu(k,120) = lu(k,120) * lu(k,114)
         lu(k,1601) = lu(k,1601) - lu(k,115) * lu(k,1600)
         lu(k,1602) = lu(k,1602) - lu(k,116) * lu(k,1600)
         lu(k,1632) = lu(k,1632) - lu(k,117) * lu(k,1600)
         lu(k,1664) = lu(k,1664) - lu(k,118) * lu(k,1600)
         lu(k,1719) = lu(k,1719) - lu(k,119) * lu(k,1600)
         lu(k,1728) = lu(k,1728) - lu(k,120) * lu(k,1600)
      end do
      end subroutine lu_fac02
      subroutine lu_fac03( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,121) = 1._r8 / lu(k,121)
         lu(k,122) = lu(k,122) * lu(k,121)
         lu(k,123) = lu(k,123) * lu(k,121)
         lu(k,124) = lu(k,124) * lu(k,121)
         lu(k,125) = lu(k,125) * lu(k,121)
         lu(k,1633) = lu(k,1633) - lu(k,122) * lu(k,1601)
         lu(k,1636) = lu(k,1636) - lu(k,123) * lu(k,1601)
         lu(k,1719) = lu(k,1719) - lu(k,124) * lu(k,1601)
         lu(k,1728) = lu(k,1728) - lu(k,125) * lu(k,1601)
         lu(k,126) = 1._r8 / lu(k,126)
         lu(k,127) = lu(k,127) * lu(k,126)
         lu(k,128) = lu(k,128) * lu(k,126)
         lu(k,129) = lu(k,129) * lu(k,126)
         lu(k,143) = - lu(k,127) * lu(k,138)
         lu(k,144) = - lu(k,128) * lu(k,138)
         lu(k,146) = lu(k,146) - lu(k,129) * lu(k,138)
         lu(k,1694) = lu(k,1694) - lu(k,127) * lu(k,1602)
         lu(k,1710) = lu(k,1710) - lu(k,128) * lu(k,1602)
         lu(k,1728) = lu(k,1728) - lu(k,129) * lu(k,1602)
         lu(k,130) = 1._r8 / lu(k,130)
         lu(k,131) = lu(k,131) * lu(k,130)
         lu(k,132) = lu(k,132) * lu(k,130)
         lu(k,1091) = lu(k,1091) - lu(k,131) * lu(k,1085)
         lu(k,1096) = - lu(k,132) * lu(k,1085)
         lu(k,1700) = lu(k,1700) - lu(k,131) * lu(k,1603)
         lu(k,1719) = lu(k,1719) - lu(k,132) * lu(k,1603)
         lu(k,2088) = lu(k,2088) - lu(k,131) * lu(k,2024)
         lu(k,2106) = lu(k,2106) - lu(k,132) * lu(k,2024)
         lu(k,139) = 1._r8 / lu(k,139)
         lu(k,140) = lu(k,140) * lu(k,139)
         lu(k,141) = lu(k,141) * lu(k,139)
         lu(k,142) = lu(k,142) * lu(k,139)
         lu(k,143) = lu(k,143) * lu(k,139)
         lu(k,144) = lu(k,144) * lu(k,139)
         lu(k,145) = lu(k,145) * lu(k,139)
         lu(k,146) = lu(k,146) * lu(k,139)
         lu(k,1605) = lu(k,1605) - lu(k,140) * lu(k,1604)
         lu(k,1632) = lu(k,1632) - lu(k,141) * lu(k,1604)
         lu(k,1665) = lu(k,1665) - lu(k,142) * lu(k,1604)
         lu(k,1694) = lu(k,1694) - lu(k,143) * lu(k,1604)
         lu(k,1710) = lu(k,1710) - lu(k,144) * lu(k,1604)
         lu(k,1719) = lu(k,1719) - lu(k,145) * lu(k,1604)
         lu(k,1728) = lu(k,1728) - lu(k,146) * lu(k,1604)
         lu(k,147) = 1._r8 / lu(k,147)
         lu(k,148) = lu(k,148) * lu(k,147)
         lu(k,149) = lu(k,149) * lu(k,147)
         lu(k,150) = lu(k,150) * lu(k,147)
         lu(k,151) = lu(k,151) * lu(k,147)
         lu(k,1636) = lu(k,1636) - lu(k,148) * lu(k,1605)
         lu(k,1640) = lu(k,1640) - lu(k,149) * lu(k,1605)
         lu(k,1719) = lu(k,1719) - lu(k,150) * lu(k,1605)
         lu(k,1728) = lu(k,1728) - lu(k,151) * lu(k,1605)
         lu(k,152) = 1._r8 / lu(k,152)
         lu(k,153) = lu(k,153) * lu(k,152)
         lu(k,154) = lu(k,154) * lu(k,152)
         lu(k,673) = lu(k,673) - lu(k,153) * lu(k,672)
         lu(k,678) = lu(k,678) - lu(k,154) * lu(k,672)
         lu(k,1103) = lu(k,1103) - lu(k,153) * lu(k,1102)
         lu(k,1112) = lu(k,1112) - lu(k,154) * lu(k,1102)
         lu(k,1936) = lu(k,1936) - lu(k,153) * lu(k,1935)
         lu(k,1950) = - lu(k,154) * lu(k,1935)
         lu(k,2148) = lu(k,2148) - lu(k,153) * lu(k,2146)
         lu(k,2164) = lu(k,2164) - lu(k,154) * lu(k,2146)
         lu(k,155) = 1._r8 / lu(k,155)
         lu(k,156) = lu(k,156) * lu(k,155)
         lu(k,157) = lu(k,157) * lu(k,155)
         lu(k,158) = lu(k,158) * lu(k,155)
         lu(k,159) = lu(k,159) * lu(k,155)
         lu(k,1191) = - lu(k,156) * lu(k,1188)
         lu(k,1203) = - lu(k,157) * lu(k,1188)
         lu(k,1213) = - lu(k,158) * lu(k,1188)
         lu(k,1220) = lu(k,1220) - lu(k,159) * lu(k,1188)
         lu(k,1653) = - lu(k,156) * lu(k,1606)
         lu(k,1700) = lu(k,1700) - lu(k,157) * lu(k,1606)
         lu(k,1719) = lu(k,1719) - lu(k,158) * lu(k,1606)
         lu(k,1728) = lu(k,1728) - lu(k,159) * lu(k,1606)
         lu(k,160) = 1._r8 / lu(k,160)
         lu(k,161) = lu(k,161) * lu(k,160)
         lu(k,162) = lu(k,162) * lu(k,160)
         lu(k,977) = lu(k,977) - lu(k,161) * lu(k,965)
         lu(k,978) = lu(k,978) - lu(k,162) * lu(k,965)
         lu(k,1038) = - lu(k,161) * lu(k,1023)
         lu(k,1039) = lu(k,1039) - lu(k,162) * lu(k,1023)
         lu(k,1516) = - lu(k,161) * lu(k,1441)
         lu(k,1517) = lu(k,1517) - lu(k,162) * lu(k,1441)
         lu(k,1725) = lu(k,1725) - lu(k,161) * lu(k,1607)
         lu(k,1726) = lu(k,1726) - lu(k,162) * lu(k,1607)
         lu(k,163) = 1._r8 / lu(k,163)
         lu(k,164) = lu(k,164) * lu(k,163)
         lu(k,165) = lu(k,165) * lu(k,163)
         lu(k,821) = - lu(k,164) * lu(k,816)
         lu(k,831) = lu(k,831) - lu(k,165) * lu(k,816)
         lu(k,859) = - lu(k,164) * lu(k,854)
         lu(k,869) = lu(k,869) - lu(k,165) * lu(k,854)
         lu(k,1683) = lu(k,1683) - lu(k,164) * lu(k,1608)
         lu(k,1719) = lu(k,1719) - lu(k,165) * lu(k,1608)
         lu(k,1751) = - lu(k,164) * lu(k,1738)
         lu(k,1781) = lu(k,1781) - lu(k,165) * lu(k,1738)
      end do
      end subroutine lu_fac03
      subroutine lu_fac04( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,166) = 1._r8 / lu(k,166)
         lu(k,167) = lu(k,167) * lu(k,166)
         lu(k,168) = lu(k,168) * lu(k,166)
         lu(k,656) = lu(k,656) - lu(k,167) * lu(k,653)
         lu(k,657) = - lu(k,168) * lu(k,653)
         lu(k,1338) = - lu(k,167) * lu(k,1333)
         lu(k,1339) = lu(k,1339) - lu(k,168) * lu(k,1333)
         lu(k,2006) = lu(k,2006) - lu(k,167) * lu(k,1999)
         lu(k,2009) = lu(k,2009) - lu(k,168) * lu(k,1999)
         lu(k,2127) = lu(k,2127) - lu(k,167) * lu(k,2120)
         lu(k,2131) = lu(k,2131) - lu(k,168) * lu(k,2120)
         lu(k,169) = 1._r8 / lu(k,169)
         lu(k,170) = lu(k,170) * lu(k,169)
         lu(k,171) = lu(k,171) * lu(k,169)
         lu(k,243) = - lu(k,170) * lu(k,240)
         lu(k,244) = lu(k,244) - lu(k,171) * lu(k,240)
         lu(k,324) = - lu(k,170) * lu(k,321)
         lu(k,326) = - lu(k,171) * lu(k,321)
         lu(k,1454) = lu(k,1454) - lu(k,170) * lu(k,1442)
         lu(k,1510) = lu(k,1510) - lu(k,171) * lu(k,1442)
         lu(k,1641) = lu(k,1641) - lu(k,170) * lu(k,1609)
         lu(k,1719) = lu(k,1719) - lu(k,171) * lu(k,1609)
         lu(k,173) = 1._r8 / lu(k,173)
         lu(k,174) = lu(k,174) * lu(k,173)
         lu(k,175) = lu(k,175) * lu(k,173)
         lu(k,176) = lu(k,176) * lu(k,173)
         lu(k,892) = lu(k,892) - lu(k,174) * lu(k,891)
         lu(k,895) = lu(k,895) - lu(k,175) * lu(k,891)
         lu(k,897) = - lu(k,176) * lu(k,891)
         lu(k,1684) = lu(k,1684) - lu(k,174) * lu(k,1610)
         lu(k,1721) = lu(k,1721) - lu(k,175) * lu(k,1610)
         lu(k,1730) = lu(k,1730) - lu(k,176) * lu(k,1610)
         lu(k,2149) = - lu(k,174) * lu(k,2147)
         lu(k,2161) = lu(k,2161) - lu(k,175) * lu(k,2147)
         lu(k,2170) = lu(k,2170) - lu(k,176) * lu(k,2147)
         lu(k,177) = 1._r8 / lu(k,177)
         lu(k,178) = lu(k,178) * lu(k,177)
         lu(k,179) = lu(k,179) * lu(k,177)
         lu(k,180) = lu(k,180) * lu(k,177)
         lu(k,841) = lu(k,841) - lu(k,178) * lu(k,837)
         lu(k,845) = - lu(k,179) * lu(k,837)
         lu(k,848) = lu(k,848) - lu(k,180) * lu(k,837)
         lu(k,1385) = lu(k,1385) - lu(k,178) * lu(k,1363)
         lu(k,1400) = - lu(k,179) * lu(k,1363)
         lu(k,1407) = lu(k,1407) - lu(k,180) * lu(k,1363)
         lu(k,1699) = lu(k,1699) - lu(k,178) * lu(k,1611)
         lu(k,1719) = lu(k,1719) - lu(k,179) * lu(k,1611)
         lu(k,1728) = lu(k,1728) - lu(k,180) * lu(k,1611)
         lu(k,181) = 1._r8 / lu(k,181)
         lu(k,182) = lu(k,182) * lu(k,181)
         lu(k,183) = lu(k,183) * lu(k,181)
         lu(k,184) = lu(k,184) * lu(k,181)
         lu(k,528) = lu(k,528) - lu(k,182) * lu(k,527)
         lu(k,529) = lu(k,529) - lu(k,183) * lu(k,527)
         lu(k,531) = - lu(k,184) * lu(k,527)
         lu(k,1636) = lu(k,1636) - lu(k,182) * lu(k,1612)
         lu(k,1656) = lu(k,1656) - lu(k,183) * lu(k,1612)
         lu(k,1719) = lu(k,1719) - lu(k,184) * lu(k,1612)
         lu(k,2043) = - lu(k,182) * lu(k,2025)
         lu(k,2056) = lu(k,2056) - lu(k,183) * lu(k,2025)
         lu(k,2106) = lu(k,2106) - lu(k,184) * lu(k,2025)
         lu(k,185) = 1._r8 / lu(k,185)
         lu(k,186) = lu(k,186) * lu(k,185)
         lu(k,187) = lu(k,187) * lu(k,185)
         lu(k,188) = lu(k,188) * lu(k,185)
         lu(k,189) = lu(k,189) * lu(k,185)
         lu(k,190) = lu(k,190) * lu(k,185)
         lu(k,1900) = lu(k,1900) - lu(k,186) * lu(k,1860)
         lu(k,1905) = lu(k,1905) - lu(k,187) * lu(k,1860)
         lu(k,1907) = lu(k,1907) - lu(k,188) * lu(k,1860)
         lu(k,1909) = lu(k,1909) - lu(k,189) * lu(k,1860)
         lu(k,1910) = lu(k,1910) - lu(k,190) * lu(k,1860)
         lu(k,1984) = lu(k,1984) - lu(k,186) * lu(k,1958)
         lu(k,1989) = lu(k,1989) - lu(k,187) * lu(k,1958)
         lu(k,1991) = lu(k,1991) - lu(k,188) * lu(k,1958)
         lu(k,1993) = lu(k,1993) - lu(k,189) * lu(k,1958)
         lu(k,1994) = lu(k,1994) - lu(k,190) * lu(k,1958)
         lu(k,191) = 1._r8 / lu(k,191)
         lu(k,192) = lu(k,192) * lu(k,191)
         lu(k,193) = lu(k,193) * lu(k,191)
         lu(k,194) = lu(k,194) * lu(k,191)
         lu(k,195) = lu(k,195) * lu(k,191)
         lu(k,196) = lu(k,196) * lu(k,191)
         lu(k,1684) = lu(k,1684) - lu(k,192) * lu(k,1613)
         lu(k,1719) = lu(k,1719) - lu(k,193) * lu(k,1613)
         lu(k,1723) = lu(k,1723) - lu(k,194) * lu(k,1613)
         lu(k,1725) = lu(k,1725) - lu(k,195) * lu(k,1613)
         lu(k,1728) = lu(k,1728) - lu(k,196) * lu(k,1613)
         lu(k,1871) = lu(k,1871) - lu(k,192) * lu(k,1861)
         lu(k,1903) = lu(k,1903) - lu(k,193) * lu(k,1861)
         lu(k,1907) = lu(k,1907) - lu(k,194) * lu(k,1861)
         lu(k,1909) = lu(k,1909) - lu(k,195) * lu(k,1861)
         lu(k,1912) = lu(k,1912) - lu(k,196) * lu(k,1861)
         lu(k,197) = 1._r8 / lu(k,197)
         lu(k,198) = lu(k,198) * lu(k,197)
         lu(k,199) = lu(k,199) * lu(k,197)
         lu(k,496) = - lu(k,198) * lu(k,490)
         lu(k,500) = lu(k,500) - lu(k,199) * lu(k,490)
         lu(k,592) = - lu(k,198) * lu(k,585)
         lu(k,599) = lu(k,599) - lu(k,199) * lu(k,585)
         lu(k,619) = - lu(k,198) * lu(k,613)
         lu(k,627) = lu(k,627) - lu(k,199) * lu(k,613)
         lu(k,635) = - lu(k,198) * lu(k,628)
         lu(k,644) = lu(k,644) - lu(k,199) * lu(k,628)
         lu(k,1467) = lu(k,1467) - lu(k,198) * lu(k,1443)
         lu(k,1519) = lu(k,1519) - lu(k,199) * lu(k,1443)
         lu(k,200) = 1._r8 / lu(k,200)
         lu(k,201) = lu(k,201) * lu(k,200)
         lu(k,202) = lu(k,202) * lu(k,200)
         lu(k,203) = lu(k,203) * lu(k,200)
         lu(k,204) = lu(k,204) * lu(k,200)
         lu(k,205) = lu(k,205) * lu(k,200)
         lu(k,1528) = - lu(k,201) * lu(k,1523)
         lu(k,1530) = - lu(k,202) * lu(k,1523)
         lu(k,1534) = lu(k,1534) - lu(k,203) * lu(k,1523)
         lu(k,1545) = lu(k,1545) - lu(k,204) * lu(k,1523)
         lu(k,1554) = lu(k,1554) - lu(k,205) * lu(k,1523)
         lu(k,1670) = lu(k,1670) - lu(k,201) * lu(k,1614)
         lu(k,1678) = lu(k,1678) - lu(k,202) * lu(k,1614)
         lu(k,1694) = lu(k,1694) - lu(k,203) * lu(k,1614)
         lu(k,1719) = lu(k,1719) - lu(k,204) * lu(k,1614)
         lu(k,1728) = lu(k,1728) - lu(k,205) * lu(k,1614)
      end do
      end subroutine lu_fac04
      subroutine lu_fac05( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,206) = 1._r8 / lu(k,206)
         lu(k,207) = lu(k,207) * lu(k,206)
         lu(k,208) = lu(k,208) * lu(k,206)
         lu(k,209) = lu(k,209) * lu(k,206)
         lu(k,210) = lu(k,210) * lu(k,206)
         lu(k,211) = lu(k,211) * lu(k,206)
         lu(k,1531) = lu(k,1531) - lu(k,207) * lu(k,1524)
         lu(k,1538) = lu(k,1538) - lu(k,208) * lu(k,1524)
         lu(k,1543) = lu(k,1543) - lu(k,209) * lu(k,1524)
         lu(k,1545) = lu(k,1545) - lu(k,210) * lu(k,1524)
         lu(k,1556) = - lu(k,211) * lu(k,1524)
         lu(k,1681) = lu(k,1681) - lu(k,207) * lu(k,1615)
         lu(k,1712) = lu(k,1712) - lu(k,208) * lu(k,1615)
         lu(k,1717) = lu(k,1717) - lu(k,209) * lu(k,1615)
         lu(k,1719) = lu(k,1719) - lu(k,210) * lu(k,1615)
         lu(k,1730) = lu(k,1730) - lu(k,211) * lu(k,1615)
         lu(k,212) = 1._r8 / lu(k,212)
         lu(k,213) = lu(k,213) * lu(k,212)
         lu(k,214) = lu(k,214) * lu(k,212)
         lu(k,1203) = lu(k,1203) - lu(k,213) * lu(k,1189)
         lu(k,1213) = lu(k,1213) - lu(k,214) * lu(k,1189)
         lu(k,1293) = lu(k,1293) - lu(k,213) * lu(k,1284)
         lu(k,1306) = lu(k,1306) - lu(k,214) * lu(k,1284)
         lu(k,1386) = lu(k,1386) - lu(k,213) * lu(k,1364)
         lu(k,1400) = lu(k,1400) - lu(k,214) * lu(k,1364)
         lu(k,1494) = lu(k,1494) - lu(k,213) * lu(k,1444)
         lu(k,1510) = lu(k,1510) - lu(k,214) * lu(k,1444)
         lu(k,1700) = lu(k,1700) - lu(k,213) * lu(k,1616)
         lu(k,1719) = lu(k,1719) - lu(k,214) * lu(k,1616)
         lu(k,1886) = lu(k,1886) - lu(k,213) * lu(k,1862)
         lu(k,1903) = lu(k,1903) - lu(k,214) * lu(k,1862)
         lu(k,215) = 1._r8 / lu(k,215)
         lu(k,216) = lu(k,216) * lu(k,215)
         lu(k,217) = lu(k,217) * lu(k,215)
         lu(k,218) = lu(k,218) * lu(k,215)
         lu(k,219) = lu(k,219) * lu(k,215)
         lu(k,1231) = lu(k,1231) - lu(k,216) * lu(k,1222)
         lu(k,1232) = - lu(k,217) * lu(k,1222)
         lu(k,1236) = - lu(k,218) * lu(k,1222)
         lu(k,1242) = lu(k,1242) - lu(k,219) * lu(k,1222)
         lu(k,1707) = lu(k,1707) - lu(k,216) * lu(k,1617)
         lu(k,1709) = lu(k,1709) - lu(k,217) * lu(k,1617)
         lu(k,1719) = lu(k,1719) - lu(k,218) * lu(k,1617)
         lu(k,1728) = lu(k,1728) - lu(k,219) * lu(k,1617)
         lu(k,2095) = lu(k,2095) - lu(k,216) * lu(k,2026)
         lu(k,2097) = lu(k,2097) - lu(k,217) * lu(k,2026)
         lu(k,2106) = lu(k,2106) - lu(k,218) * lu(k,2026)
         lu(k,2115) = lu(k,2115) - lu(k,219) * lu(k,2026)
         lu(k,220) = 1._r8 / lu(k,220)
         lu(k,221) = lu(k,221) * lu(k,220)
         lu(k,222) = lu(k,222) * lu(k,220)
         lu(k,223) = lu(k,223) * lu(k,220)
         lu(k,224) = lu(k,224) * lu(k,220)
         lu(k,558) = lu(k,558) - lu(k,221) * lu(k,557)
         lu(k,559) = lu(k,559) - lu(k,222) * lu(k,557)
         lu(k,560) = lu(k,560) - lu(k,223) * lu(k,557)
         lu(k,562) = lu(k,562) - lu(k,224) * lu(k,557)
         lu(k,1659) = lu(k,1659) - lu(k,221) * lu(k,1618)
         lu(k,1699) = lu(k,1699) - lu(k,222) * lu(k,1618)
         lu(k,1710) = lu(k,1710) - lu(k,223) * lu(k,1618)
         lu(k,1719) = lu(k,1719) - lu(k,224) * lu(k,1618)
         lu(k,2058) = lu(k,2058) - lu(k,221) * lu(k,2027)
         lu(k,2087) = lu(k,2087) - lu(k,222) * lu(k,2027)
         lu(k,2098) = lu(k,2098) - lu(k,223) * lu(k,2027)
         lu(k,2106) = lu(k,2106) - lu(k,224) * lu(k,2027)
         lu(k,225) = 1._r8 / lu(k,225)
         lu(k,226) = lu(k,226) * lu(k,225)
         lu(k,227) = lu(k,227) * lu(k,225)
         lu(k,228) = lu(k,228) * lu(k,225)
         lu(k,229) = lu(k,229) * lu(k,225)
         lu(k,595) = - lu(k,226) * lu(k,586)
         lu(k,596) = lu(k,596) - lu(k,227) * lu(k,586)
         lu(k,597) = - lu(k,228) * lu(k,586)
         lu(k,599) = lu(k,599) - lu(k,229) * lu(k,586)
         lu(k,638) = - lu(k,226) * lu(k,629)
         lu(k,639) = lu(k,639) - lu(k,227) * lu(k,629)
         lu(k,640) = - lu(k,228) * lu(k,629)
         lu(k,644) = lu(k,644) - lu(k,229) * lu(k,629)
         lu(k,1488) = lu(k,1488) - lu(k,226) * lu(k,1445)
         lu(k,1497) = lu(k,1497) - lu(k,227) * lu(k,1445)
         lu(k,1503) = lu(k,1503) - lu(k,228) * lu(k,1445)
         lu(k,1519) = lu(k,1519) - lu(k,229) * lu(k,1445)
         lu(k,230) = 1._r8 / lu(k,230)
         lu(k,231) = lu(k,231) * lu(k,230)
         lu(k,232) = lu(k,232) * lu(k,230)
         lu(k,233) = lu(k,233) * lu(k,230)
         lu(k,234) = lu(k,234) * lu(k,230)
         lu(k,1317) = lu(k,1317) - lu(k,231) * lu(k,1315)
         lu(k,1318) = lu(k,1318) - lu(k,232) * lu(k,1315)
         lu(k,1325) = lu(k,1325) - lu(k,233) * lu(k,1315)
         lu(k,1330) = lu(k,1330) - lu(k,234) * lu(k,1315)
         lu(k,2003) = lu(k,2003) - lu(k,231) * lu(k,2000)
         lu(k,2004) = lu(k,2004) - lu(k,232) * lu(k,2000)
         lu(k,2013) = lu(k,2013) - lu(k,233) * lu(k,2000)
         lu(k,2021) = lu(k,2021) - lu(k,234) * lu(k,2000)
         lu(k,2123) = lu(k,2123) - lu(k,231) * lu(k,2121)
         lu(k,2125) = lu(k,2125) - lu(k,232) * lu(k,2121)
         lu(k,2135) = lu(k,2135) - lu(k,233) * lu(k,2121)
         lu(k,2143) = lu(k,2143) - lu(k,234) * lu(k,2121)
         lu(k,235) = 1._r8 / lu(k,235)
         lu(k,236) = lu(k,236) * lu(k,235)
         lu(k,237) = lu(k,237) * lu(k,235)
         lu(k,238) = lu(k,238) * lu(k,235)
         lu(k,239) = lu(k,239) * lu(k,235)
         lu(k,336) = lu(k,336) - lu(k,236) * lu(k,335)
         lu(k,337) = lu(k,337) - lu(k,237) * lu(k,335)
         lu(k,339) = - lu(k,238) * lu(k,335)
         lu(k,341) = lu(k,341) - lu(k,239) * lu(k,335)
         lu(k,1633) = lu(k,1633) - lu(k,236) * lu(k,1619)
         lu(k,1678) = lu(k,1678) - lu(k,237) * lu(k,1619)
         lu(k,1719) = lu(k,1719) - lu(k,238) * lu(k,1619)
         lu(k,1728) = lu(k,1728) - lu(k,239) * lu(k,1619)
         lu(k,2040) = lu(k,2040) - lu(k,236) * lu(k,2028)
         lu(k,2073) = lu(k,2073) - lu(k,237) * lu(k,2028)
         lu(k,2106) = lu(k,2106) - lu(k,238) * lu(k,2028)
         lu(k,2115) = lu(k,2115) - lu(k,239) * lu(k,2028)
         lu(k,241) = 1._r8 / lu(k,241)
         lu(k,242) = lu(k,242) * lu(k,241)
         lu(k,243) = lu(k,243) * lu(k,241)
         lu(k,244) = lu(k,244) * lu(k,241)
         lu(k,245) = lu(k,245) * lu(k,241)
         lu(k,323) = lu(k,323) - lu(k,242) * lu(k,322)
         lu(k,324) = lu(k,324) - lu(k,243) * lu(k,322)
         lu(k,326) = lu(k,326) - lu(k,244) * lu(k,322)
         lu(k,328) = lu(k,328) - lu(k,245) * lu(k,322)
         lu(k,1632) = lu(k,1632) - lu(k,242) * lu(k,1620)
         lu(k,1641) = lu(k,1641) - lu(k,243) * lu(k,1620)
         lu(k,1719) = lu(k,1719) - lu(k,244) * lu(k,1620)
         lu(k,1728) = lu(k,1728) - lu(k,245) * lu(k,1620)
         lu(k,2038) = lu(k,2038) - lu(k,242) * lu(k,2029)
         lu(k,2048) = lu(k,2048) - lu(k,243) * lu(k,2029)
         lu(k,2106) = lu(k,2106) - lu(k,244) * lu(k,2029)
         lu(k,2115) = lu(k,2115) - lu(k,245) * lu(k,2029)
         lu(k,246) = 1._r8 / lu(k,246)
         lu(k,247) = lu(k,247) * lu(k,246)
         lu(k,248) = lu(k,248) * lu(k,246)
         lu(k,249) = lu(k,249) * lu(k,246)
         lu(k,250) = lu(k,250) * lu(k,246)
         lu(k,840) = lu(k,840) - lu(k,247) * lu(k,838)
         lu(k,841) = lu(k,841) - lu(k,248) * lu(k,838)
         lu(k,845) = lu(k,845) - lu(k,249) * lu(k,838)
         lu(k,848) = lu(k,848) - lu(k,250) * lu(k,838)
         lu(k,1681) = lu(k,1681) - lu(k,247) * lu(k,1621)
         lu(k,1699) = lu(k,1699) - lu(k,248) * lu(k,1621)
         lu(k,1719) = lu(k,1719) - lu(k,249) * lu(k,1621)
         lu(k,1728) = lu(k,1728) - lu(k,250) * lu(k,1621)
         lu(k,2075) = lu(k,2075) - lu(k,247) * lu(k,2030)
         lu(k,2087) = lu(k,2087) - lu(k,248) * lu(k,2030)
         lu(k,2106) = lu(k,2106) - lu(k,249) * lu(k,2030)
         lu(k,2115) = lu(k,2115) - lu(k,250) * lu(k,2030)
      end do
      end subroutine lu_fac05
      subroutine lu_fac06( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,251) = 1._r8 / lu(k,251)
         lu(k,252) = lu(k,252) * lu(k,251)
         lu(k,253) = lu(k,253) * lu(k,251)
         lu(k,254) = lu(k,254) * lu(k,251)
         lu(k,255) = lu(k,255) * lu(k,251)
         lu(k,256) = lu(k,256) * lu(k,251)
         lu(k,257) = lu(k,257) * lu(k,251)
         lu(k,258) = lu(k,258) * lu(k,251)
         lu(k,1662) = lu(k,1662) - lu(k,252) * lu(k,1622)
         lu(k,1684) = lu(k,1684) - lu(k,253) * lu(k,1622)
         lu(k,1694) = lu(k,1694) - lu(k,254) * lu(k,1622)
         lu(k,1711) = lu(k,1711) - lu(k,255) * lu(k,1622)
         lu(k,1719) = lu(k,1719) - lu(k,256) * lu(k,1622)
         lu(k,1721) = lu(k,1721) - lu(k,257) * lu(k,1622)
         lu(k,1724) = lu(k,1724) - lu(k,258) * lu(k,1622)
         lu(k,1802) = - lu(k,252) * lu(k,1795)
         lu(k,1810) = - lu(k,253) * lu(k,1795)
         lu(k,1812) = lu(k,1812) - lu(k,254) * lu(k,1795)
         lu(k,1814) = lu(k,1814) - lu(k,255) * lu(k,1795)
         lu(k,1822) = lu(k,1822) - lu(k,256) * lu(k,1795)
         lu(k,1824) = lu(k,1824) - lu(k,257) * lu(k,1795)
         lu(k,1827) = lu(k,1827) - lu(k,258) * lu(k,1795)
         lu(k,259) = 1._r8 / lu(k,259)
         lu(k,260) = lu(k,260) * lu(k,259)
         lu(k,261) = lu(k,261) * lu(k,259)
         lu(k,262) = lu(k,262) * lu(k,259)
         lu(k,263) = lu(k,263) * lu(k,259)
         lu(k,264) = lu(k,264) * lu(k,259)
         lu(k,265) = lu(k,265) * lu(k,259)
         lu(k,266) = lu(k,266) * lu(k,259)
         lu(k,1648) = lu(k,1648) - lu(k,260) * lu(k,1623)
         lu(k,1685) = lu(k,1685) - lu(k,261) * lu(k,1623)
         lu(k,1699) = lu(k,1699) - lu(k,262) * lu(k,1623)
         lu(k,1719) = lu(k,1719) - lu(k,263) * lu(k,1623)
         lu(k,1722) = lu(k,1722) - lu(k,264) * lu(k,1623)
         lu(k,1723) = lu(k,1723) - lu(k,265) * lu(k,1623)
         lu(k,1726) = lu(k,1726) - lu(k,266) * lu(k,1623)
         lu(k,1864) = - lu(k,260) * lu(k,1863)
         lu(k,1872) = lu(k,1872) - lu(k,261) * lu(k,1863)
         lu(k,1885) = lu(k,1885) - lu(k,262) * lu(k,1863)
         lu(k,1903) = lu(k,1903) - lu(k,263) * lu(k,1863)
         lu(k,1906) = lu(k,1906) - lu(k,264) * lu(k,1863)
         lu(k,1907) = lu(k,1907) - lu(k,265) * lu(k,1863)
         lu(k,1910) = lu(k,1910) - lu(k,266) * lu(k,1863)
         lu(k,267) = 1._r8 / lu(k,267)
         lu(k,268) = lu(k,268) * lu(k,267)
         lu(k,269) = lu(k,269) * lu(k,267)
         lu(k,270) = lu(k,270) * lu(k,267)
         lu(k,271) = lu(k,271) * lu(k,267)
         lu(k,272) = lu(k,272) * lu(k,267)
         lu(k,1119) = - lu(k,268) * lu(k,1115)
         lu(k,1121) = - lu(k,269) * lu(k,1115)
         lu(k,1131) = - lu(k,270) * lu(k,1115)
         lu(k,1135) = - lu(k,271) * lu(k,1115)
         lu(k,1137) = lu(k,1137) - lu(k,272) * lu(k,1115)
         lu(k,1371) = - lu(k,268) * lu(k,1365)
         lu(k,1377) = lu(k,1377) - lu(k,269) * lu(k,1365)
         lu(k,1400) = lu(k,1400) - lu(k,270) * lu(k,1365)
         lu(k,1405) = - lu(k,271) * lu(k,1365)
         lu(k,1407) = lu(k,1407) - lu(k,272) * lu(k,1365)
         lu(k,1676) = lu(k,1676) - lu(k,268) * lu(k,1624)
         lu(k,1690) = lu(k,1690) - lu(k,269) * lu(k,1624)
         lu(k,1719) = lu(k,1719) - lu(k,270) * lu(k,1624)
         lu(k,1725) = lu(k,1725) - lu(k,271) * lu(k,1624)
         lu(k,1728) = lu(k,1728) - lu(k,272) * lu(k,1624)
         lu(k,273) = 1._r8 / lu(k,273)
         lu(k,274) = lu(k,274) * lu(k,273)
         lu(k,275) = lu(k,275) * lu(k,273)
         lu(k,276) = lu(k,276) * lu(k,273)
         lu(k,277) = lu(k,277) * lu(k,273)
         lu(k,278) = lu(k,278) * lu(k,273)
         lu(k,376) = lu(k,376) - lu(k,274) * lu(k,375)
         lu(k,377) = lu(k,377) - lu(k,275) * lu(k,375)
         lu(k,379) = lu(k,379) - lu(k,276) * lu(k,375)
         lu(k,381) = - lu(k,277) * lu(k,375)
         lu(k,383) = lu(k,383) - lu(k,278) * lu(k,375)
         lu(k,1634) = lu(k,1634) - lu(k,274) * lu(k,1625)
         lu(k,1639) = lu(k,1639) - lu(k,275) * lu(k,1625)
         lu(k,1678) = lu(k,1678) - lu(k,276) * lu(k,1625)
         lu(k,1719) = lu(k,1719) - lu(k,277) * lu(k,1625)
         lu(k,1728) = lu(k,1728) - lu(k,278) * lu(k,1625)
         lu(k,2041) = - lu(k,274) * lu(k,2031)
         lu(k,2046) = lu(k,2046) - lu(k,275) * lu(k,2031)
         lu(k,2073) = lu(k,2073) - lu(k,276) * lu(k,2031)
         lu(k,2106) = lu(k,2106) - lu(k,277) * lu(k,2031)
         lu(k,2115) = lu(k,2115) - lu(k,278) * lu(k,2031)
         lu(k,279) = 1._r8 / lu(k,279)
         lu(k,280) = lu(k,280) * lu(k,279)
         lu(k,281) = lu(k,281) * lu(k,279)
         lu(k,282) = lu(k,282) * lu(k,279)
         lu(k,283) = lu(k,283) * lu(k,279)
         lu(k,284) = lu(k,284) * lu(k,279)
         lu(k,819) = - lu(k,280) * lu(k,817)
         lu(k,825) = lu(k,825) - lu(k,281) * lu(k,817)
         lu(k,829) = - lu(k,282) * lu(k,817)
         lu(k,830) = lu(k,830) - lu(k,283) * lu(k,817)
         lu(k,835) = lu(k,835) - lu(k,284) * lu(k,817)
         lu(k,857) = - lu(k,280) * lu(k,855)
         lu(k,863) = lu(k,863) - lu(k,281) * lu(k,855)
         lu(k,867) = - lu(k,282) * lu(k,855)
         lu(k,868) = lu(k,868) - lu(k,283) * lu(k,855)
         lu(k,873) = lu(k,873) - lu(k,284) * lu(k,855)
         lu(k,1748) = - lu(k,280) * lu(k,1739)
         lu(k,1759) = lu(k,1759) - lu(k,281) * lu(k,1739)
         lu(k,1767) = lu(k,1767) - lu(k,282) * lu(k,1739)
         lu(k,1773) = lu(k,1773) - lu(k,283) * lu(k,1739)
         lu(k,1790) = lu(k,1790) - lu(k,284) * lu(k,1739)
         lu(k,285) = 1._r8 / lu(k,285)
         lu(k,286) = lu(k,286) * lu(k,285)
         lu(k,287) = lu(k,287) * lu(k,285)
         lu(k,288) = lu(k,288) * lu(k,285)
         lu(k,289) = lu(k,289) * lu(k,285)
         lu(k,290) = lu(k,290) * lu(k,285)
         lu(k,1045) = lu(k,1045) - lu(k,286) * lu(k,1042)
         lu(k,1049) = lu(k,1049) - lu(k,287) * lu(k,1042)
         lu(k,1054) = - lu(k,288) * lu(k,1042)
         lu(k,1058) = - lu(k,289) * lu(k,1042)
         lu(k,1059) = lu(k,1059) - lu(k,290) * lu(k,1042)
         lu(k,1687) = lu(k,1687) - lu(k,286) * lu(k,1626)
         lu(k,1697) = lu(k,1697) - lu(k,287) * lu(k,1626)
         lu(k,1719) = lu(k,1719) - lu(k,288) * lu(k,1626)
         lu(k,1725) = lu(k,1725) - lu(k,289) * lu(k,1626)
         lu(k,1726) = lu(k,1726) - lu(k,290) * lu(k,1626)
         lu(k,2078) = - lu(k,286) * lu(k,2032)
         lu(k,2085) = lu(k,2085) - lu(k,287) * lu(k,2032)
         lu(k,2106) = lu(k,2106) - lu(k,288) * lu(k,2032)
         lu(k,2112) = - lu(k,289) * lu(k,2032)
         lu(k,2113) = lu(k,2113) - lu(k,290) * lu(k,2032)
      end do
      end subroutine lu_fac06
      subroutine lu_fac07( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,291) = 1._r8 / lu(k,291)
         lu(k,292) = lu(k,292) * lu(k,291)
         lu(k,293) = lu(k,293) * lu(k,291)
         lu(k,294) = lu(k,294) * lu(k,291)
         lu(k,295) = lu(k,295) * lu(k,291)
         lu(k,296) = lu(k,296) * lu(k,291)
         lu(k,1065) = lu(k,1065) - lu(k,292) * lu(k,1062)
         lu(k,1067) = lu(k,1067) - lu(k,293) * lu(k,1062)
         lu(k,1070) = lu(k,1070) - lu(k,294) * lu(k,1062)
         lu(k,1071) = lu(k,1071) - lu(k,295) * lu(k,1062)
         lu(k,1074) = - lu(k,296) * lu(k,1062)
         lu(k,1698) = lu(k,1698) - lu(k,292) * lu(k,1627)
         lu(k,1710) = lu(k,1710) - lu(k,293) * lu(k,1627)
         lu(k,1719) = lu(k,1719) - lu(k,294) * lu(k,1627)
         lu(k,1722) = lu(k,1722) - lu(k,295) * lu(k,1627)
         lu(k,1730) = lu(k,1730) - lu(k,296) * lu(k,1627)
         lu(k,2086) = lu(k,2086) - lu(k,292) * lu(k,2033)
         lu(k,2098) = lu(k,2098) - lu(k,293) * lu(k,2033)
         lu(k,2106) = lu(k,2106) - lu(k,294) * lu(k,2033)
         lu(k,2109) = lu(k,2109) - lu(k,295) * lu(k,2033)
         lu(k,2117) = lu(k,2117) - lu(k,296) * lu(k,2033)
         lu(k,297) = 1._r8 / lu(k,297)
         lu(k,298) = lu(k,298) * lu(k,297)
         lu(k,299) = lu(k,299) * lu(k,297)
         lu(k,300) = lu(k,300) * lu(k,297)
         lu(k,301) = lu(k,301) * lu(k,297)
         lu(k,302) = lu(k,302) * lu(k,297)
         lu(k,1117) = - lu(k,298) * lu(k,1116)
         lu(k,1119) = lu(k,1119) - lu(k,299) * lu(k,1116)
         lu(k,1131) = lu(k,1131) - lu(k,300) * lu(k,1116)
         lu(k,1136) = lu(k,1136) - lu(k,301) * lu(k,1116)
         lu(k,1137) = lu(k,1137) - lu(k,302) * lu(k,1116)
         lu(k,1660) = lu(k,1660) - lu(k,298) * lu(k,1628)
         lu(k,1676) = lu(k,1676) - lu(k,299) * lu(k,1628)
         lu(k,1719) = lu(k,1719) - lu(k,300) * lu(k,1628)
         lu(k,1726) = lu(k,1726) - lu(k,301) * lu(k,1628)
         lu(k,1728) = lu(k,1728) - lu(k,302) * lu(k,1628)
         lu(k,2059) = lu(k,2059) - lu(k,298) * lu(k,2034)
         lu(k,2072) = - lu(k,299) * lu(k,2034)
         lu(k,2106) = lu(k,2106) - lu(k,300) * lu(k,2034)
         lu(k,2113) = lu(k,2113) - lu(k,301) * lu(k,2034)
         lu(k,2115) = lu(k,2115) - lu(k,302) * lu(k,2034)
         lu(k,303) = 1._r8 / lu(k,303)
         lu(k,304) = lu(k,304) * lu(k,303)
         lu(k,305) = lu(k,305) * lu(k,303)
         lu(k,306) = lu(k,306) * lu(k,303)
         lu(k,307) = lu(k,307) * lu(k,303)
         lu(k,308) = lu(k,308) * lu(k,303)
         lu(k,728) = lu(k,728) - lu(k,304) * lu(k,727)
         lu(k,729) = lu(k,729) - lu(k,305) * lu(k,727)
         lu(k,734) = - lu(k,306) * lu(k,727)
         lu(k,737) = lu(k,737) - lu(k,307) * lu(k,727)
         lu(k,738) = - lu(k,308) * lu(k,727)
         lu(k,1672) = lu(k,1672) - lu(k,304) * lu(k,1629)
         lu(k,1685) = lu(k,1685) - lu(k,305) * lu(k,1629)
         lu(k,1719) = lu(k,1719) - lu(k,306) * lu(k,1629)
         lu(k,1728) = lu(k,1728) - lu(k,307) * lu(k,1629)
         lu(k,1730) = lu(k,1730) - lu(k,308) * lu(k,1629)
         lu(k,2069) = lu(k,2069) - lu(k,304) * lu(k,2035)
         lu(k,2077) = - lu(k,305) * lu(k,2035)
         lu(k,2106) = lu(k,2106) - lu(k,306) * lu(k,2035)
         lu(k,2115) = lu(k,2115) - lu(k,307) * lu(k,2035)
         lu(k,2117) = lu(k,2117) - lu(k,308) * lu(k,2035)
         lu(k,309) = 1._r8 / lu(k,309)
         lu(k,310) = lu(k,310) * lu(k,309)
         lu(k,311) = lu(k,311) * lu(k,309)
         lu(k,312) = lu(k,312) * lu(k,309)
         lu(k,313) = lu(k,313) * lu(k,309)
         lu(k,314) = lu(k,314) * lu(k,309)
         lu(k,1396) = lu(k,1396) - lu(k,310) * lu(k,1366)
         lu(k,1400) = lu(k,1400) - lu(k,311) * lu(k,1366)
         lu(k,1402) = lu(k,1402) - lu(k,312) * lu(k,1366)
         lu(k,1404) = - lu(k,313) * lu(k,1366)
         lu(k,1409) = - lu(k,314) * lu(k,1366)
         lu(k,1714) = lu(k,1714) - lu(k,310) * lu(k,1630)
         lu(k,1719) = lu(k,1719) - lu(k,311) * lu(k,1630)
         lu(k,1722) = lu(k,1722) - lu(k,312) * lu(k,1630)
         lu(k,1724) = lu(k,1724) - lu(k,313) * lu(k,1630)
         lu(k,1730) = lu(k,1730) - lu(k,314) * lu(k,1630)
         lu(k,2101) = lu(k,2101) - lu(k,310) * lu(k,2036)
         lu(k,2106) = lu(k,2106) - lu(k,311) * lu(k,2036)
         lu(k,2109) = lu(k,2109) - lu(k,312) * lu(k,2036)
         lu(k,2111) = lu(k,2111) - lu(k,313) * lu(k,2036)
         lu(k,2117) = lu(k,2117) - lu(k,314) * lu(k,2036)
         lu(k,315) = 1._r8 / lu(k,315)
         lu(k,316) = lu(k,316) * lu(k,315)
         lu(k,317) = lu(k,317) * lu(k,315)
         lu(k,318) = lu(k,318) * lu(k,315)
         lu(k,319) = lu(k,319) * lu(k,315)
         lu(k,320) = lu(k,320) * lu(k,315)
         lu(k,392) = lu(k,392) - lu(k,316) * lu(k,391)
         lu(k,393) = lu(k,393) - lu(k,317) * lu(k,391)
         lu(k,394) = lu(k,394) - lu(k,318) * lu(k,391)
         lu(k,396) = - lu(k,319) * lu(k,391)
         lu(k,398) = lu(k,398) - lu(k,320) * lu(k,391)
         lu(k,1640) = lu(k,1640) - lu(k,316) * lu(k,1631)
         lu(k,1678) = lu(k,1678) - lu(k,317) * lu(k,1631)
         lu(k,1704) = lu(k,1704) - lu(k,318) * lu(k,1631)
         lu(k,1719) = lu(k,1719) - lu(k,319) * lu(k,1631)
         lu(k,1728) = lu(k,1728) - lu(k,320) * lu(k,1631)
         lu(k,2047) = lu(k,2047) - lu(k,316) * lu(k,2037)
         lu(k,2073) = lu(k,2073) - lu(k,317) * lu(k,2037)
         lu(k,2092) = lu(k,2092) - lu(k,318) * lu(k,2037)
         lu(k,2106) = lu(k,2106) - lu(k,319) * lu(k,2037)
         lu(k,2115) = lu(k,2115) - lu(k,320) * lu(k,2037)
         lu(k,323) = 1._r8 / lu(k,323)
         lu(k,324) = lu(k,324) * lu(k,323)
         lu(k,325) = lu(k,325) * lu(k,323)
         lu(k,326) = lu(k,326) * lu(k,323)
         lu(k,327) = lu(k,327) * lu(k,323)
         lu(k,328) = lu(k,328) * lu(k,323)
         lu(k,1454) = lu(k,1454) - lu(k,324) * lu(k,1446)
         lu(k,1507) = lu(k,1507) - lu(k,325) * lu(k,1446)
         lu(k,1510) = lu(k,1510) - lu(k,326) * lu(k,1446)
         lu(k,1517) = lu(k,1517) - lu(k,327) * lu(k,1446)
         lu(k,1519) = lu(k,1519) - lu(k,328) * lu(k,1446)
         lu(k,1641) = lu(k,1641) - lu(k,324) * lu(k,1632)
         lu(k,1716) = lu(k,1716) - lu(k,325) * lu(k,1632)
         lu(k,1719) = lu(k,1719) - lu(k,326) * lu(k,1632)
         lu(k,1726) = lu(k,1726) - lu(k,327) * lu(k,1632)
         lu(k,1728) = lu(k,1728) - lu(k,328) * lu(k,1632)
         lu(k,2048) = lu(k,2048) - lu(k,324) * lu(k,2038)
         lu(k,2103) = lu(k,2103) - lu(k,325) * lu(k,2038)
         lu(k,2106) = lu(k,2106) - lu(k,326) * lu(k,2038)
         lu(k,2113) = lu(k,2113) - lu(k,327) * lu(k,2038)
         lu(k,2115) = lu(k,2115) - lu(k,328) * lu(k,2038)
         lu(k,329) = 1._r8 / lu(k,329)
         lu(k,330) = lu(k,330) * lu(k,329)
         lu(k,331) = lu(k,331) * lu(k,329)
         lu(k,332) = lu(k,332) * lu(k,329)
         lu(k,333) = lu(k,333) * lu(k,329)
         lu(k,334) = lu(k,334) * lu(k,329)
         lu(k,1472) = lu(k,1472) - lu(k,330) * lu(k,1447)
         lu(k,1507) = lu(k,1507) - lu(k,331) * lu(k,1447)
         lu(k,1513) = lu(k,1513) - lu(k,332) * lu(k,1447)
         lu(k,1517) = lu(k,1517) - lu(k,333) * lu(k,1447)
         lu(k,1519) = lu(k,1519) - lu(k,334) * lu(k,1447)
         lu(k,1835) = - lu(k,330) * lu(k,1834)
         lu(k,1843) = - lu(k,331) * lu(k,1834)
         lu(k,1849) = lu(k,1849) - lu(k,332) * lu(k,1834)
         lu(k,1853) = - lu(k,333) * lu(k,1834)
         lu(k,1855) = lu(k,1855) - lu(k,334) * lu(k,1834)
         lu(k,2067) = lu(k,2067) - lu(k,330) * lu(k,2039)
         lu(k,2103) = lu(k,2103) - lu(k,331) * lu(k,2039)
         lu(k,2109) = lu(k,2109) - lu(k,332) * lu(k,2039)
         lu(k,2113) = lu(k,2113) - lu(k,333) * lu(k,2039)
         lu(k,2115) = lu(k,2115) - lu(k,334) * lu(k,2039)
      end do
      end subroutine lu_fac07
      subroutine lu_fac08( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,336) = 1._r8 / lu(k,336)
         lu(k,337) = lu(k,337) * lu(k,336)
         lu(k,338) = lu(k,338) * lu(k,336)
         lu(k,339) = lu(k,339) * lu(k,336)
         lu(k,340) = lu(k,340) * lu(k,336)
         lu(k,341) = lu(k,341) * lu(k,336)
         lu(k,1477) = lu(k,1477) - lu(k,337) * lu(k,1448)
         lu(k,1507) = lu(k,1507) - lu(k,338) * lu(k,1448)
         lu(k,1510) = lu(k,1510) - lu(k,339) * lu(k,1448)
         lu(k,1517) = lu(k,1517) - lu(k,340) * lu(k,1448)
         lu(k,1519) = lu(k,1519) - lu(k,341) * lu(k,1448)
         lu(k,1678) = lu(k,1678) - lu(k,337) * lu(k,1633)
         lu(k,1716) = lu(k,1716) - lu(k,338) * lu(k,1633)
         lu(k,1719) = lu(k,1719) - lu(k,339) * lu(k,1633)
         lu(k,1726) = lu(k,1726) - lu(k,340) * lu(k,1633)
         lu(k,1728) = lu(k,1728) - lu(k,341) * lu(k,1633)
         lu(k,2073) = lu(k,2073) - lu(k,337) * lu(k,2040)
         lu(k,2103) = lu(k,2103) - lu(k,338) * lu(k,2040)
         lu(k,2106) = lu(k,2106) - lu(k,339) * lu(k,2040)
         lu(k,2113) = lu(k,2113) - lu(k,340) * lu(k,2040)
         lu(k,2115) = lu(k,2115) - lu(k,341) * lu(k,2040)
         lu(k,342) = 1._r8 / lu(k,342)
         lu(k,343) = lu(k,343) * lu(k,342)
         lu(k,344) = lu(k,344) * lu(k,342)
         lu(k,378) = - lu(k,343) * lu(k,376)
         lu(k,383) = lu(k,383) - lu(k,344) * lu(k,376)
         lu(k,494) = - lu(k,343) * lu(k,491)
         lu(k,500) = lu(k,500) - lu(k,344) * lu(k,491)
         lu(k,590) = - lu(k,343) * lu(k,587)
         lu(k,599) = lu(k,599) - lu(k,344) * lu(k,587)
         lu(k,617) = - lu(k,343) * lu(k,614)
         lu(k,627) = lu(k,627) - lu(k,344) * lu(k,614)
         lu(k,633) = - lu(k,343) * lu(k,630)
         lu(k,644) = lu(k,644) - lu(k,344) * lu(k,630)
         lu(k,1464) = lu(k,1464) - lu(k,343) * lu(k,1449)
         lu(k,1519) = lu(k,1519) - lu(k,344) * lu(k,1449)
         lu(k,1663) = - lu(k,343) * lu(k,1634)
         lu(k,1728) = lu(k,1728) - lu(k,344) * lu(k,1634)
         lu(k,2061) = lu(k,2061) - lu(k,343) * lu(k,2041)
         lu(k,2115) = lu(k,2115) - lu(k,344) * lu(k,2041)
         lu(k,345) = 1._r8 / lu(k,345)
         lu(k,346) = lu(k,346) * lu(k,345)
         lu(k,347) = lu(k,347) * lu(k,345)
         lu(k,348) = lu(k,348) * lu(k,345)
         lu(k,349) = lu(k,349) * lu(k,345)
         lu(k,665) = - lu(k,346) * lu(k,663)
         lu(k,666) = - lu(k,347) * lu(k,663)
         lu(k,669) = lu(k,669) - lu(k,348) * lu(k,663)
         lu(k,671) = lu(k,671) - lu(k,349) * lu(k,663)
         lu(k,1423) = lu(k,1423) - lu(k,346) * lu(k,1412)
         lu(k,1427) = lu(k,1427) - lu(k,347) * lu(k,1412)
         lu(k,1434) = - lu(k,348) * lu(k,1412)
         lu(k,1438) = lu(k,1438) - lu(k,349) * lu(k,1412)
         lu(k,1484) = lu(k,1484) - lu(k,346) * lu(k,1450)
         lu(k,1506) = lu(k,1506) - lu(k,347) * lu(k,1450)
         lu(k,1513) = lu(k,1513) - lu(k,348) * lu(k,1450)
         lu(k,1519) = lu(k,1519) - lu(k,349) * lu(k,1450)
         lu(k,2079) = - lu(k,346) * lu(k,2042)
         lu(k,2102) = lu(k,2102) - lu(k,347) * lu(k,2042)
         lu(k,2109) = lu(k,2109) - lu(k,348) * lu(k,2042)
         lu(k,2115) = lu(k,2115) - lu(k,349) * lu(k,2042)
         lu(k,350) = 1._r8 / lu(k,350)
         lu(k,351) = lu(k,351) * lu(k,350)
         lu(k,352) = lu(k,352) * lu(k,350)
         lu(k,353) = lu(k,353) * lu(k,350)
         lu(k,354) = lu(k,354) * lu(k,350)
         lu(k,355) = lu(k,355) * lu(k,350)
         lu(k,356) = lu(k,356) * lu(k,350)
         lu(k,1302) = lu(k,1302) - lu(k,351) * lu(k,1285)
         lu(k,1303) = lu(k,1303) - lu(k,352) * lu(k,1285)
         lu(k,1306) = lu(k,1306) - lu(k,353) * lu(k,1285)
         lu(k,1308) = lu(k,1308) - lu(k,354) * lu(k,1285)
         lu(k,1309) = - lu(k,355) * lu(k,1285)
         lu(k,1312) = lu(k,1312) - lu(k,356) * lu(k,1285)
         lu(k,1710) = lu(k,1710) - lu(k,351) * lu(k,1635)
         lu(k,1714) = lu(k,1714) - lu(k,352) * lu(k,1635)
         lu(k,1719) = lu(k,1719) - lu(k,353) * lu(k,1635)
         lu(k,1722) = lu(k,1722) - lu(k,354) * lu(k,1635)
         lu(k,1723) = lu(k,1723) - lu(k,355) * lu(k,1635)
         lu(k,1726) = lu(k,1726) - lu(k,356) * lu(k,1635)
         lu(k,1978) = lu(k,1978) - lu(k,351) * lu(k,1959)
         lu(k,1982) = - lu(k,352) * lu(k,1959)
         lu(k,1987) = lu(k,1987) - lu(k,353) * lu(k,1959)
         lu(k,1990) = - lu(k,354) * lu(k,1959)
         lu(k,1991) = lu(k,1991) - lu(k,355) * lu(k,1959)
         lu(k,1994) = lu(k,1994) - lu(k,356) * lu(k,1959)
         lu(k,357) = 1._r8 / lu(k,357)
         lu(k,358) = lu(k,358) * lu(k,357)
         lu(k,359) = lu(k,359) * lu(k,357)
         lu(k,360) = lu(k,360) * lu(k,357)
         lu(k,529) = lu(k,529) - lu(k,358) * lu(k,528)
         lu(k,532) = - lu(k,359) * lu(k,528)
         lu(k,533) = lu(k,533) - lu(k,360) * lu(k,528)
         lu(k,1461) = lu(k,1461) - lu(k,358) * lu(k,1451)
         lu(k,1511) = lu(k,1511) - lu(k,359) * lu(k,1451)
         lu(k,1517) = lu(k,1517) - lu(k,360) * lu(k,1451)
         lu(k,1656) = lu(k,1656) - lu(k,358) * lu(k,1636)
         lu(k,1720) = lu(k,1720) - lu(k,359) * lu(k,1636)
         lu(k,1726) = lu(k,1726) - lu(k,360) * lu(k,1636)
         lu(k,1743) = lu(k,1743) - lu(k,358) * lu(k,1740)
         lu(k,1782) = lu(k,1782) - lu(k,359) * lu(k,1740)
         lu(k,1788) = lu(k,1788) - lu(k,360) * lu(k,1740)
         lu(k,1965) = - lu(k,358) * lu(k,1960)
         lu(k,1988) = lu(k,1988) - lu(k,359) * lu(k,1960)
         lu(k,1994) = lu(k,1994) - lu(k,360) * lu(k,1960)
         lu(k,2056) = lu(k,2056) - lu(k,358) * lu(k,2043)
         lu(k,2107) = lu(k,2107) - lu(k,359) * lu(k,2043)
         lu(k,2113) = lu(k,2113) - lu(k,360) * lu(k,2043)
         lu(k,361) = 1._r8 / lu(k,361)
         lu(k,362) = lu(k,362) * lu(k,361)
         lu(k,363) = lu(k,363) * lu(k,361)
         lu(k,364) = lu(k,364) * lu(k,361)
         lu(k,365) = lu(k,365) * lu(k,361)
         lu(k,366) = lu(k,366) * lu(k,361)
         lu(k,367) = lu(k,367) * lu(k,361)
         lu(k,1715) = lu(k,1715) - lu(k,362) * lu(k,1637)
         lu(k,1719) = lu(k,1719) - lu(k,363) * lu(k,1637)
         lu(k,1723) = lu(k,1723) - lu(k,364) * lu(k,1637)
         lu(k,1726) = lu(k,1726) - lu(k,365) * lu(k,1637)
         lu(k,1728) = lu(k,1728) - lu(k,366) * lu(k,1637)
         lu(k,1730) = lu(k,1730) - lu(k,367) * lu(k,1637)
         lu(k,1983) = lu(k,1983) - lu(k,362) * lu(k,1961)
         lu(k,1987) = lu(k,1987) - lu(k,363) * lu(k,1961)
         lu(k,1991) = lu(k,1991) - lu(k,364) * lu(k,1961)
         lu(k,1994) = lu(k,1994) - lu(k,365) * lu(k,1961)
         lu(k,1996) = lu(k,1996) - lu(k,366) * lu(k,1961)
         lu(k,1998) = - lu(k,367) * lu(k,1961)
         lu(k,2102) = lu(k,2102) - lu(k,362) * lu(k,2044)
         lu(k,2106) = lu(k,2106) - lu(k,363) * lu(k,2044)
         lu(k,2110) = lu(k,2110) - lu(k,364) * lu(k,2044)
         lu(k,2113) = lu(k,2113) - lu(k,365) * lu(k,2044)
         lu(k,2115) = lu(k,2115) - lu(k,366) * lu(k,2044)
         lu(k,2117) = lu(k,2117) - lu(k,367) * lu(k,2044)
         lu(k,368) = 1._r8 / lu(k,368)
         lu(k,369) = lu(k,369) * lu(k,368)
         lu(k,370) = lu(k,370) * lu(k,368)
         lu(k,371) = lu(k,371) * lu(k,368)
         lu(k,372) = lu(k,372) * lu(k,368)
         lu(k,373) = lu(k,373) * lu(k,368)
         lu(k,374) = lu(k,374) * lu(k,368)
         lu(k,1004) = lu(k,1004) - lu(k,369) * lu(k,1001)
         lu(k,1005) = lu(k,1005) - lu(k,370) * lu(k,1001)
         lu(k,1008) = lu(k,1008) - lu(k,371) * lu(k,1001)
         lu(k,1015) = - lu(k,372) * lu(k,1001)
         lu(k,1016) = lu(k,1016) - lu(k,373) * lu(k,1001)
         lu(k,1021) = lu(k,1021) - lu(k,374) * lu(k,1001)
         lu(k,1685) = lu(k,1685) - lu(k,369) * lu(k,1638)
         lu(k,1687) = lu(k,1687) - lu(k,370) * lu(k,1638)
         lu(k,1695) = lu(k,1695) - lu(k,371) * lu(k,1638)
         lu(k,1719) = lu(k,1719) - lu(k,372) * lu(k,1638)
         lu(k,1722) = lu(k,1722) - lu(k,373) * lu(k,1638)
         lu(k,1728) = lu(k,1728) - lu(k,374) * lu(k,1638)
         lu(k,2077) = lu(k,2077) - lu(k,369) * lu(k,2045)
         lu(k,2078) = lu(k,2078) - lu(k,370) * lu(k,2045)
         lu(k,2083) = lu(k,2083) - lu(k,371) * lu(k,2045)
         lu(k,2106) = lu(k,2106) - lu(k,372) * lu(k,2045)
         lu(k,2109) = lu(k,2109) - lu(k,373) * lu(k,2045)
         lu(k,2115) = lu(k,2115) - lu(k,374) * lu(k,2045)
      end do
      end subroutine lu_fac08
      subroutine lu_fac09( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,377) = 1._r8 / lu(k,377)
         lu(k,378) = lu(k,378) * lu(k,377)
         lu(k,379) = lu(k,379) * lu(k,377)
         lu(k,380) = lu(k,380) * lu(k,377)
         lu(k,381) = lu(k,381) * lu(k,377)
         lu(k,382) = lu(k,382) * lu(k,377)
         lu(k,383) = lu(k,383) * lu(k,377)
         lu(k,1464) = lu(k,1464) - lu(k,378) * lu(k,1452)
         lu(k,1477) = lu(k,1477) - lu(k,379) * lu(k,1452)
         lu(k,1507) = lu(k,1507) - lu(k,380) * lu(k,1452)
         lu(k,1510) = lu(k,1510) - lu(k,381) * lu(k,1452)
         lu(k,1517) = lu(k,1517) - lu(k,382) * lu(k,1452)
         lu(k,1519) = lu(k,1519) - lu(k,383) * lu(k,1452)
         lu(k,1663) = lu(k,1663) - lu(k,378) * lu(k,1639)
         lu(k,1678) = lu(k,1678) - lu(k,379) * lu(k,1639)
         lu(k,1716) = lu(k,1716) - lu(k,380) * lu(k,1639)
         lu(k,1719) = lu(k,1719) - lu(k,381) * lu(k,1639)
         lu(k,1726) = lu(k,1726) - lu(k,382) * lu(k,1639)
         lu(k,1728) = lu(k,1728) - lu(k,383) * lu(k,1639)
         lu(k,2061) = lu(k,2061) - lu(k,378) * lu(k,2046)
         lu(k,2073) = lu(k,2073) - lu(k,379) * lu(k,2046)
         lu(k,2103) = lu(k,2103) - lu(k,380) * lu(k,2046)
         lu(k,2106) = lu(k,2106) - lu(k,381) * lu(k,2046)
         lu(k,2113) = lu(k,2113) - lu(k,382) * lu(k,2046)
         lu(k,2115) = lu(k,2115) - lu(k,383) * lu(k,2046)
         lu(k,384) = 1._r8 / lu(k,384)
         lu(k,385) = lu(k,385) * lu(k,384)
         lu(k,386) = lu(k,386) * lu(k,384)
         lu(k,387) = lu(k,387) * lu(k,384)
         lu(k,388) = lu(k,388) * lu(k,384)
         lu(k,389) = lu(k,389) * lu(k,384)
         lu(k,390) = lu(k,390) * lu(k,384)
         lu(k,740) = - lu(k,385) * lu(k,739)
         lu(k,741) = lu(k,741) - lu(k,386) * lu(k,739)
         lu(k,742) = lu(k,742) - lu(k,387) * lu(k,739)
         lu(k,744) = lu(k,744) - lu(k,388) * lu(k,739)
         lu(k,746) = lu(k,746) - lu(k,389) * lu(k,739)
         lu(k,750) = lu(k,750) - lu(k,390) * lu(k,739)
         lu(k,1415) = lu(k,1415) - lu(k,385) * lu(k,1413)
         lu(k,1418) = lu(k,1418) - lu(k,386) * lu(k,1413)
         lu(k,1419) = lu(k,1419) - lu(k,387) * lu(k,1413)
         lu(k,1421) = lu(k,1421) - lu(k,388) * lu(k,1413)
         lu(k,1427) = lu(k,1427) - lu(k,389) * lu(k,1413)
         lu(k,1433) = lu(k,1433) - lu(k,390) * lu(k,1413)
         lu(k,1800) = lu(k,1800) - lu(k,385) * lu(k,1796)
         lu(k,1804) = - lu(k,386) * lu(k,1796)
         lu(k,1805) = lu(k,1805) - lu(k,387) * lu(k,1796)
         lu(k,1807) = lu(k,1807) - lu(k,388) * lu(k,1796)
         lu(k,1818) = lu(k,1818) - lu(k,389) * lu(k,1796)
         lu(k,1824) = lu(k,1824) - lu(k,390) * lu(k,1796)
         lu(k,392) = 1._r8 / lu(k,392)
         lu(k,393) = lu(k,393) * lu(k,392)
         lu(k,394) = lu(k,394) * lu(k,392)
         lu(k,395) = lu(k,395) * lu(k,392)
         lu(k,396) = lu(k,396) * lu(k,392)
         lu(k,397) = lu(k,397) * lu(k,392)
         lu(k,398) = lu(k,398) * lu(k,392)
         lu(k,1477) = lu(k,1477) - lu(k,393) * lu(k,1453)
         lu(k,1497) = lu(k,1497) - lu(k,394) * lu(k,1453)
         lu(k,1507) = lu(k,1507) - lu(k,395) * lu(k,1453)
         lu(k,1510) = lu(k,1510) - lu(k,396) * lu(k,1453)
         lu(k,1517) = lu(k,1517) - lu(k,397) * lu(k,1453)
         lu(k,1519) = lu(k,1519) - lu(k,398) * lu(k,1453)
         lu(k,1678) = lu(k,1678) - lu(k,393) * lu(k,1640)
         lu(k,1704) = lu(k,1704) - lu(k,394) * lu(k,1640)
         lu(k,1716) = lu(k,1716) - lu(k,395) * lu(k,1640)
         lu(k,1719) = lu(k,1719) - lu(k,396) * lu(k,1640)
         lu(k,1726) = lu(k,1726) - lu(k,397) * lu(k,1640)
         lu(k,1728) = lu(k,1728) - lu(k,398) * lu(k,1640)
         lu(k,2073) = lu(k,2073) - lu(k,393) * lu(k,2047)
         lu(k,2092) = lu(k,2092) - lu(k,394) * lu(k,2047)
         lu(k,2103) = lu(k,2103) - lu(k,395) * lu(k,2047)
         lu(k,2106) = lu(k,2106) - lu(k,396) * lu(k,2047)
         lu(k,2113) = lu(k,2113) - lu(k,397) * lu(k,2047)
         lu(k,2115) = lu(k,2115) - lu(k,398) * lu(k,2047)
         lu(k,400) = 1._r8 / lu(k,400)
         lu(k,401) = lu(k,401) * lu(k,400)
         lu(k,402) = lu(k,402) * lu(k,400)
         lu(k,403) = lu(k,403) * lu(k,400)
         lu(k,404) = lu(k,404) * lu(k,400)
         lu(k,405) = lu(k,405) * lu(k,400)
         lu(k,1461) = lu(k,1461) - lu(k,401) * lu(k,1454)
         lu(k,1507) = lu(k,1507) - lu(k,402) * lu(k,1454)
         lu(k,1510) = lu(k,1510) - lu(k,403) * lu(k,1454)
         lu(k,1517) = lu(k,1517) - lu(k,404) * lu(k,1454)
         lu(k,1519) = lu(k,1519) - lu(k,405) * lu(k,1454)
         lu(k,1656) = lu(k,1656) - lu(k,401) * lu(k,1641)
         lu(k,1716) = lu(k,1716) - lu(k,402) * lu(k,1641)
         lu(k,1719) = lu(k,1719) - lu(k,403) * lu(k,1641)
         lu(k,1726) = lu(k,1726) - lu(k,404) * lu(k,1641)
         lu(k,1728) = lu(k,1728) - lu(k,405) * lu(k,1641)
         lu(k,1965) = lu(k,1965) - lu(k,401) * lu(k,1962)
         lu(k,1984) = lu(k,1984) - lu(k,402) * lu(k,1962)
         lu(k,1987) = lu(k,1987) - lu(k,403) * lu(k,1962)
         lu(k,1994) = lu(k,1994) - lu(k,404) * lu(k,1962)
         lu(k,1996) = lu(k,1996) - lu(k,405) * lu(k,1962)
         lu(k,2056) = lu(k,2056) - lu(k,401) * lu(k,2048)
         lu(k,2103) = lu(k,2103) - lu(k,402) * lu(k,2048)
         lu(k,2106) = lu(k,2106) - lu(k,403) * lu(k,2048)
         lu(k,2113) = lu(k,2113) - lu(k,404) * lu(k,2048)
         lu(k,2115) = lu(k,2115) - lu(k,405) * lu(k,2048)
         lu(k,406) = 1._r8 / lu(k,406)
         lu(k,407) = lu(k,407) * lu(k,406)
         lu(k,408) = lu(k,408) * lu(k,406)
         lu(k,409) = lu(k,409) * lu(k,406)
         lu(k,410) = lu(k,410) * lu(k,406)
         lu(k,411) = lu(k,411) * lu(k,406)
         lu(k,1272) = lu(k,1272) - lu(k,407) * lu(k,1266)
         lu(k,1273) = lu(k,1273) - lu(k,408) * lu(k,1266)
         lu(k,1275) = lu(k,1275) - lu(k,409) * lu(k,1266)
         lu(k,1277) = lu(k,1277) - lu(k,410) * lu(k,1266)
         lu(k,1283) = - lu(k,411) * lu(k,1266)
         lu(k,1302) = lu(k,1302) - lu(k,407) * lu(k,1286)
         lu(k,1303) = lu(k,1303) - lu(k,408) * lu(k,1286)
         lu(k,1306) = lu(k,1306) - lu(k,409) * lu(k,1286)
         lu(k,1308) = lu(k,1308) - lu(k,410) * lu(k,1286)
         lu(k,1314) = - lu(k,411) * lu(k,1286)
         lu(k,1710) = lu(k,1710) - lu(k,407) * lu(k,1642)
         lu(k,1714) = lu(k,1714) - lu(k,408) * lu(k,1642)
         lu(k,1719) = lu(k,1719) - lu(k,409) * lu(k,1642)
         lu(k,1722) = lu(k,1722) - lu(k,410) * lu(k,1642)
         lu(k,1730) = lu(k,1730) - lu(k,411) * lu(k,1642)
         lu(k,2098) = lu(k,2098) - lu(k,407) * lu(k,2049)
         lu(k,2101) = lu(k,2101) - lu(k,408) * lu(k,2049)
         lu(k,2106) = lu(k,2106) - lu(k,409) * lu(k,2049)
         lu(k,2109) = lu(k,2109) - lu(k,410) * lu(k,2049)
         lu(k,2117) = lu(k,2117) - lu(k,411) * lu(k,2049)
         lu(k,412) = 1._r8 / lu(k,412)
         lu(k,413) = lu(k,413) * lu(k,412)
         lu(k,414) = lu(k,414) * lu(k,412)
         lu(k,415) = lu(k,415) * lu(k,412)
         lu(k,416) = lu(k,416) * lu(k,412)
         lu(k,571) = lu(k,571) - lu(k,413) * lu(k,565)
         lu(k,573) = lu(k,573) - lu(k,414) * lu(k,565)
         lu(k,574) = - lu(k,415) * lu(k,565)
         lu(k,575) = - lu(k,416) * lu(k,565)
         lu(k,692) = lu(k,692) - lu(k,413) * lu(k,689)
         lu(k,693) = - lu(k,414) * lu(k,689)
         lu(k,694) = - lu(k,415) * lu(k,689)
         lu(k,695) = - lu(k,416) * lu(k,689)
         lu(k,702) = lu(k,702) - lu(k,413) * lu(k,697)
         lu(k,704) = - lu(k,414) * lu(k,697)
         lu(k,705) = - lu(k,415) * lu(k,697)
         lu(k,706) = lu(k,706) - lu(k,416) * lu(k,697)
         lu(k,1421) = lu(k,1421) - lu(k,413) * lu(k,1414)
         lu(k,1427) = lu(k,1427) - lu(k,414) * lu(k,1414)
         lu(k,1428) = lu(k,1428) - lu(k,415) * lu(k,1414)
         lu(k,1430) = lu(k,1430) - lu(k,416) * lu(k,1414)
         lu(k,1807) = lu(k,1807) - lu(k,413) * lu(k,1797)
         lu(k,1818) = lu(k,1818) - lu(k,414) * lu(k,1797)
         lu(k,1819) = lu(k,1819) - lu(k,415) * lu(k,1797)
         lu(k,1821) = - lu(k,416) * lu(k,1797)
         lu(k,417) = 1._r8 / lu(k,417)
         lu(k,418) = lu(k,418) * lu(k,417)
         lu(k,419) = lu(k,419) * lu(k,417)
         lu(k,420) = lu(k,420) * lu(k,417)
         lu(k,421) = lu(k,421) * lu(k,417)
         lu(k,537) = - lu(k,418) * lu(k,535)
         lu(k,538) = - lu(k,419) * lu(k,535)
         lu(k,541) = - lu(k,420) * lu(k,535)
         lu(k,542) = lu(k,542) - lu(k,421) * lu(k,535)
         lu(k,548) = - lu(k,418) * lu(k,546)
         lu(k,549) = - lu(k,419) * lu(k,546)
         lu(k,553) = - lu(k,420) * lu(k,546)
         lu(k,554) = lu(k,554) - lu(k,421) * lu(k,546)
         lu(k,878) = - lu(k,418) * lu(k,875)
         lu(k,879) = - lu(k,419) * lu(k,875)
         lu(k,883) = - lu(k,420) * lu(k,875)
         lu(k,887) = - lu(k,421) * lu(k,875)
         lu(k,1463) = lu(k,1463) - lu(k,418) * lu(k,1455)
         lu(k,1479) = lu(k,1479) - lu(k,419) * lu(k,1455)
         lu(k,1503) = lu(k,1503) - lu(k,420) * lu(k,1455)
         lu(k,1510) = lu(k,1510) - lu(k,421) * lu(k,1455)
         lu(k,1659) = lu(k,1659) - lu(k,418) * lu(k,1643)
         lu(k,1681) = lu(k,1681) - lu(k,419) * lu(k,1643)
         lu(k,1710) = lu(k,1710) - lu(k,420) * lu(k,1643)
         lu(k,1719) = lu(k,1719) - lu(k,421) * lu(k,1643)
      end do
      end subroutine lu_fac09
      subroutine lu_fac10( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,422) = 1._r8 / lu(k,422)
         lu(k,423) = lu(k,423) * lu(k,422)
         lu(k,424) = lu(k,424) * lu(k,422)
         lu(k,425) = lu(k,425) * lu(k,422)
         lu(k,426) = lu(k,426) * lu(k,422)
         lu(k,427) = lu(k,427) * lu(k,422)
         lu(k,428) = lu(k,428) * lu(k,422)
         lu(k,429) = lu(k,429) * lu(k,422)
         lu(k,1194) = - lu(k,423) * lu(k,1190)
         lu(k,1197) = lu(k,1197) - lu(k,424) * lu(k,1190)
         lu(k,1198) = - lu(k,425) * lu(k,1190)
         lu(k,1199) = lu(k,1199) - lu(k,426) * lu(k,1190)
         lu(k,1213) = lu(k,1213) - lu(k,427) * lu(k,1190)
         lu(k,1218) = - lu(k,428) * lu(k,1190)
         lu(k,1220) = lu(k,1220) - lu(k,429) * lu(k,1190)
         lu(k,1476) = - lu(k,423) * lu(k,1456)
         lu(k,1484) = lu(k,1484) - lu(k,424) * lu(k,1456)
         lu(k,1485) = lu(k,1485) - lu(k,425) * lu(k,1456)
         lu(k,1487) = lu(k,1487) - lu(k,426) * lu(k,1456)
         lu(k,1510) = lu(k,1510) - lu(k,427) * lu(k,1456)
         lu(k,1516) = lu(k,1516) - lu(k,428) * lu(k,1456)
         lu(k,1519) = lu(k,1519) - lu(k,429) * lu(k,1456)
         lu(k,1676) = lu(k,1676) - lu(k,423) * lu(k,1644)
         lu(k,1690) = lu(k,1690) - lu(k,424) * lu(k,1644)
         lu(k,1691) = lu(k,1691) - lu(k,425) * lu(k,1644)
         lu(k,1693) = lu(k,1693) - lu(k,426) * lu(k,1644)
         lu(k,1719) = lu(k,1719) - lu(k,427) * lu(k,1644)
         lu(k,1725) = lu(k,1725) - lu(k,428) * lu(k,1644)
         lu(k,1728) = lu(k,1728) - lu(k,429) * lu(k,1644)
         lu(k,430) = 1._r8 / lu(k,430)
         lu(k,431) = lu(k,431) * lu(k,430)
         lu(k,432) = lu(k,432) * lu(k,430)
         lu(k,433) = lu(k,433) * lu(k,430)
         lu(k,434) = lu(k,434) * lu(k,430)
         lu(k,435) = lu(k,435) * lu(k,430)
         lu(k,436) = lu(k,436) * lu(k,430)
         lu(k,437) = lu(k,437) * lu(k,430)
         lu(k,717) = lu(k,717) - lu(k,431) * lu(k,716)
         lu(k,718) = - lu(k,432) * lu(k,716)
         lu(k,719) = lu(k,719) - lu(k,433) * lu(k,716)
         lu(k,722) = - lu(k,434) * lu(k,716)
         lu(k,723) = lu(k,723) - lu(k,435) * lu(k,716)
         lu(k,725) = lu(k,725) - lu(k,436) * lu(k,716)
         lu(k,726) = - lu(k,437) * lu(k,716)
         lu(k,1671) = lu(k,1671) - lu(k,431) * lu(k,1645)
         lu(k,1693) = lu(k,1693) - lu(k,432) * lu(k,1645)
         lu(k,1699) = lu(k,1699) - lu(k,433) * lu(k,1645)
         lu(k,1719) = lu(k,1719) - lu(k,434) * lu(k,1645)
         lu(k,1722) = lu(k,1722) - lu(k,435) * lu(k,1645)
         lu(k,1728) = lu(k,1728) - lu(k,436) * lu(k,1645)
         lu(k,1730) = lu(k,1730) - lu(k,437) * lu(k,1645)
         lu(k,2068) = lu(k,2068) - lu(k,431) * lu(k,2050)
         lu(k,2081) = - lu(k,432) * lu(k,2050)
         lu(k,2087) = lu(k,2087) - lu(k,433) * lu(k,2050)
         lu(k,2106) = lu(k,2106) - lu(k,434) * lu(k,2050)
         lu(k,2109) = lu(k,2109) - lu(k,435) * lu(k,2050)
         lu(k,2115) = lu(k,2115) - lu(k,436) * lu(k,2050)
         lu(k,2117) = lu(k,2117) - lu(k,437) * lu(k,2050)
         lu(k,438) = 1._r8 / lu(k,438)
         lu(k,439) = lu(k,439) * lu(k,438)
         lu(k,440) = lu(k,440) * lu(k,438)
         lu(k,441) = lu(k,441) * lu(k,438)
         lu(k,442) = lu(k,442) * lu(k,438)
         lu(k,443) = lu(k,443) * lu(k,438)
         lu(k,444) = lu(k,444) * lu(k,438)
         lu(k,445) = lu(k,445) * lu(k,438)
         lu(k,1803) = lu(k,1803) - lu(k,439) * lu(k,1798)
         lu(k,1816) = lu(k,1816) - lu(k,440) * lu(k,1798)
         lu(k,1824) = lu(k,1824) - lu(k,441) * lu(k,1798)
         lu(k,1826) = lu(k,1826) - lu(k,442) * lu(k,1798)
         lu(k,1828) = - lu(k,443) * lu(k,1798)
         lu(k,1829) = lu(k,1829) - lu(k,444) * lu(k,1798)
         lu(k,1830) = lu(k,1830) - lu(k,445) * lu(k,1798)
         lu(k,1968) = - lu(k,439) * lu(k,1963)
         lu(k,1981) = - lu(k,440) * lu(k,1963)
         lu(k,1989) = lu(k,1989) - lu(k,441) * lu(k,1963)
         lu(k,1991) = lu(k,1991) - lu(k,442) * lu(k,1963)
         lu(k,1993) = lu(k,1993) - lu(k,443) * lu(k,1963)
         lu(k,1994) = lu(k,1994) - lu(k,444) * lu(k,1963)
         lu(k,1995) = lu(k,1995) - lu(k,445) * lu(k,1963)
         lu(k,2002) = lu(k,2002) - lu(k,439) * lu(k,2001)
         lu(k,2006) = lu(k,2006) - lu(k,440) * lu(k,2001)
         lu(k,2013) = lu(k,2013) - lu(k,441) * lu(k,2001)
         lu(k,2015) = - lu(k,442) * lu(k,2001)
         lu(k,2017) = - lu(k,443) * lu(k,2001)
         lu(k,2018) = lu(k,2018) - lu(k,444) * lu(k,2001)
         lu(k,2019) = lu(k,2019) - lu(k,445) * lu(k,2001)
         lu(k,446) = 1._r8 / lu(k,446)
         lu(k,447) = lu(k,447) * lu(k,446)
         lu(k,448) = lu(k,448) * lu(k,446)
         lu(k,449) = lu(k,449) * lu(k,446)
         lu(k,949) = lu(k,949) - lu(k,447) * lu(k,939)
         lu(k,952) = lu(k,952) - lu(k,448) * lu(k,939)
         lu(k,958) = - lu(k,449) * lu(k,939)
         lu(k,1273) = lu(k,1273) - lu(k,447) * lu(k,1267)
         lu(k,1275) = lu(k,1275) - lu(k,448) * lu(k,1267)
         lu(k,1283) = lu(k,1283) - lu(k,449) * lu(k,1267)
         lu(k,1303) = lu(k,1303) - lu(k,447) * lu(k,1287)
         lu(k,1306) = lu(k,1306) - lu(k,448) * lu(k,1287)
         lu(k,1314) = lu(k,1314) - lu(k,449) * lu(k,1287)
         lu(k,1396) = lu(k,1396) - lu(k,447) * lu(k,1367)
         lu(k,1400) = lu(k,1400) - lu(k,448) * lu(k,1367)
         lu(k,1409) = lu(k,1409) - lu(k,449) * lu(k,1367)
         lu(k,1714) = lu(k,1714) - lu(k,447) * lu(k,1646)
         lu(k,1719) = lu(k,1719) - lu(k,448) * lu(k,1646)
         lu(k,1730) = lu(k,1730) - lu(k,449) * lu(k,1646)
         lu(k,1776) = lu(k,1776) - lu(k,447) * lu(k,1741)
         lu(k,1781) = lu(k,1781) - lu(k,448) * lu(k,1741)
         lu(k,1792) = - lu(k,449) * lu(k,1741)
         lu(k,2101) = lu(k,2101) - lu(k,447) * lu(k,2051)
         lu(k,2106) = lu(k,2106) - lu(k,448) * lu(k,2051)
         lu(k,2117) = lu(k,2117) - lu(k,449) * lu(k,2051)
         lu(k,450) = 1._r8 / lu(k,450)
         lu(k,451) = lu(k,451) * lu(k,450)
         lu(k,452) = lu(k,452) * lu(k,450)
         lu(k,453) = lu(k,453) * lu(k,450)
         lu(k,454) = lu(k,454) * lu(k,450)
         lu(k,455) = lu(k,455) * lu(k,450)
         lu(k,456) = lu(k,456) * lu(k,450)
         lu(k,457) = lu(k,457) * lu(k,450)
         lu(k,1527) = - lu(k,451) * lu(k,1525)
         lu(k,1528) = lu(k,1528) - lu(k,452) * lu(k,1525)
         lu(k,1534) = lu(k,1534) - lu(k,453) * lu(k,1525)
         lu(k,1545) = lu(k,1545) - lu(k,454) * lu(k,1525)
         lu(k,1546) = lu(k,1546) - lu(k,455) * lu(k,1525)
         lu(k,1548) = lu(k,1548) - lu(k,456) * lu(k,1525)
         lu(k,1554) = lu(k,1554) - lu(k,457) * lu(k,1525)
         lu(k,1667) = lu(k,1667) - lu(k,451) * lu(k,1647)
         lu(k,1670) = lu(k,1670) - lu(k,452) * lu(k,1647)
         lu(k,1694) = lu(k,1694) - lu(k,453) * lu(k,1647)
         lu(k,1719) = lu(k,1719) - lu(k,454) * lu(k,1647)
         lu(k,1720) = lu(k,1720) - lu(k,455) * lu(k,1647)
         lu(k,1722) = lu(k,1722) - lu(k,456) * lu(k,1647)
         lu(k,1728) = lu(k,1728) - lu(k,457) * lu(k,1647)
         lu(k,1745) = - lu(k,451) * lu(k,1742)
         lu(k,1746) = lu(k,1746) - lu(k,452) * lu(k,1742)
         lu(k,1759) = lu(k,1759) - lu(k,453) * lu(k,1742)
         lu(k,1781) = lu(k,1781) - lu(k,454) * lu(k,1742)
         lu(k,1782) = lu(k,1782) - lu(k,455) * lu(k,1742)
         lu(k,1784) = lu(k,1784) - lu(k,456) * lu(k,1742)
         lu(k,1790) = lu(k,1790) - lu(k,457) * lu(k,1742)
      end do
      end subroutine lu_fac10
      subroutine lu_fac11( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,458) = 1._r8 / lu(k,458)
         lu(k,459) = lu(k,459) * lu(k,458)
         lu(k,460) = lu(k,460) * lu(k,458)
         lu(k,461) = lu(k,461) * lu(k,458)
         lu(k,462) = lu(k,462) * lu(k,458)
         lu(k,463) = lu(k,463) * lu(k,458)
         lu(k,464) = lu(k,464) * lu(k,458)
         lu(k,465) = lu(k,465) * lu(k,458)
         lu(k,1481) = lu(k,1481) - lu(k,459) * lu(k,1457)
         lu(k,1485) = lu(k,1485) - lu(k,460) * lu(k,1457)
         lu(k,1493) = lu(k,1493) - lu(k,461) * lu(k,1457)
         lu(k,1507) = lu(k,1507) - lu(k,462) * lu(k,1457)
         lu(k,1513) = lu(k,1513) - lu(k,463) * lu(k,1457)
         lu(k,1517) = lu(k,1517) - lu(k,464) * lu(k,1457)
         lu(k,1519) = lu(k,1519) - lu(k,465) * lu(k,1457)
         lu(k,1685) = lu(k,1685) - lu(k,459) * lu(k,1648)
         lu(k,1691) = lu(k,1691) - lu(k,460) * lu(k,1648)
         lu(k,1699) = lu(k,1699) - lu(k,461) * lu(k,1648)
         lu(k,1716) = lu(k,1716) - lu(k,462) * lu(k,1648)
         lu(k,1722) = lu(k,1722) - lu(k,463) * lu(k,1648)
         lu(k,1726) = lu(k,1726) - lu(k,464) * lu(k,1648)
         lu(k,1728) = lu(k,1728) - lu(k,465) * lu(k,1648)
         lu(k,1872) = lu(k,1872) - lu(k,459) * lu(k,1864)
         lu(k,1877) = - lu(k,460) * lu(k,1864)
         lu(k,1885) = lu(k,1885) - lu(k,461) * lu(k,1864)
         lu(k,1900) = lu(k,1900) - lu(k,462) * lu(k,1864)
         lu(k,1906) = lu(k,1906) - lu(k,463) * lu(k,1864)
         lu(k,1910) = lu(k,1910) - lu(k,464) * lu(k,1864)
         lu(k,1912) = lu(k,1912) - lu(k,465) * lu(k,1864)
         lu(k,466) = 1._r8 / lu(k,466)
         lu(k,467) = lu(k,467) * lu(k,466)
         lu(k,468) = lu(k,468) * lu(k,466)
         lu(k,469) = lu(k,469) * lu(k,466)
         lu(k,470) = lu(k,470) * lu(k,466)
         lu(k,471) = lu(k,471) * lu(k,466)
         lu(k,472) = lu(k,472) * lu(k,466)
         lu(k,473) = lu(k,473) * lu(k,466)
         lu(k,1269) = - lu(k,467) * lu(k,1268)
         lu(k,1271) = lu(k,1271) - lu(k,468) * lu(k,1268)
         lu(k,1275) = lu(k,1275) - lu(k,469) * lu(k,1268)
         lu(k,1277) = lu(k,1277) - lu(k,470) * lu(k,1268)
         lu(k,1278) = lu(k,1278) - lu(k,471) * lu(k,1268)
         lu(k,1281) = lu(k,1281) - lu(k,472) * lu(k,1268)
         lu(k,1282) = lu(k,1282) - lu(k,473) * lu(k,1268)
         lu(k,1693) = lu(k,1693) - lu(k,467) * lu(k,1649)
         lu(k,1709) = lu(k,1709) - lu(k,468) * lu(k,1649)
         lu(k,1719) = lu(k,1719) - lu(k,469) * lu(k,1649)
         lu(k,1722) = lu(k,1722) - lu(k,470) * lu(k,1649)
         lu(k,1723) = lu(k,1723) - lu(k,471) * lu(k,1649)
         lu(k,1726) = lu(k,1726) - lu(k,472) * lu(k,1649)
         lu(k,1728) = lu(k,1728) - lu(k,473) * lu(k,1649)
         lu(k,1974) = - lu(k,467) * lu(k,1964)
         lu(k,1977) = lu(k,1977) - lu(k,468) * lu(k,1964)
         lu(k,1987) = lu(k,1987) - lu(k,469) * lu(k,1964)
         lu(k,1990) = lu(k,1990) - lu(k,470) * lu(k,1964)
         lu(k,1991) = lu(k,1991) - lu(k,471) * lu(k,1964)
         lu(k,1994) = lu(k,1994) - lu(k,472) * lu(k,1964)
         lu(k,1996) = lu(k,1996) - lu(k,473) * lu(k,1964)
         lu(k,474) = 1._r8 / lu(k,474)
         lu(k,475) = lu(k,475) * lu(k,474)
         lu(k,476) = lu(k,476) * lu(k,474)
         lu(k,477) = lu(k,477) * lu(k,474)
         lu(k,478) = lu(k,478) * lu(k,474)
         lu(k,479) = lu(k,479) * lu(k,474)
         lu(k,480) = lu(k,480) * lu(k,474)
         lu(k,1538) = lu(k,1538) - lu(k,475) * lu(k,1526)
         lu(k,1543) = lu(k,1543) - lu(k,476) * lu(k,1526)
         lu(k,1545) = lu(k,1545) - lu(k,477) * lu(k,1526)
         lu(k,1547) = - lu(k,478) * lu(k,1526)
         lu(k,1554) = lu(k,1554) - lu(k,479) * lu(k,1526)
         lu(k,1556) = lu(k,1556) - lu(k,480) * lu(k,1526)
         lu(k,1712) = lu(k,1712) - lu(k,475) * lu(k,1650)
         lu(k,1717) = lu(k,1717) - lu(k,476) * lu(k,1650)
         lu(k,1719) = lu(k,1719) - lu(k,477) * lu(k,1650)
         lu(k,1721) = lu(k,1721) - lu(k,478) * lu(k,1650)
         lu(k,1728) = lu(k,1728) - lu(k,479) * lu(k,1650)
         lu(k,1730) = lu(k,1730) - lu(k,480) * lu(k,1650)
         lu(k,1815) = lu(k,1815) - lu(k,475) * lu(k,1799)
         lu(k,1820) = lu(k,1820) - lu(k,476) * lu(k,1799)
         lu(k,1822) = lu(k,1822) - lu(k,477) * lu(k,1799)
         lu(k,1824) = lu(k,1824) - lu(k,478) * lu(k,1799)
         lu(k,1831) = lu(k,1831) - lu(k,479) * lu(k,1799)
         lu(k,1833) = - lu(k,480) * lu(k,1799)
         lu(k,2099) = lu(k,2099) - lu(k,475) * lu(k,2052)
         lu(k,2104) = lu(k,2104) - lu(k,476) * lu(k,2052)
         lu(k,2106) = lu(k,2106) - lu(k,477) * lu(k,2052)
         lu(k,2108) = lu(k,2108) - lu(k,478) * lu(k,2052)
         lu(k,2115) = lu(k,2115) - lu(k,479) * lu(k,2052)
         lu(k,2117) = lu(k,2117) - lu(k,480) * lu(k,2052)
         lu(k,481) = 1._r8 / lu(k,481)
         lu(k,482) = lu(k,482) * lu(k,481)
         lu(k,483) = lu(k,483) * lu(k,481)
         lu(k,484) = lu(k,484) * lu(k,481)
         lu(k,485) = lu(k,485) * lu(k,481)
         lu(k,486) = lu(k,486) * lu(k,481)
         lu(k,487) = lu(k,487) * lu(k,481)
         lu(k,488) = lu(k,488) * lu(k,481)
         lu(k,489) = lu(k,489) * lu(k,481)
         lu(k,1026) = lu(k,1026) - lu(k,482) * lu(k,1024)
         lu(k,1027) = lu(k,1027) - lu(k,483) * lu(k,1024)
         lu(k,1028) = lu(k,1028) - lu(k,484) * lu(k,1024)
         lu(k,1029) = lu(k,1029) - lu(k,485) * lu(k,1024)
         lu(k,1030) = lu(k,1030) - lu(k,486) * lu(k,1024)
         lu(k,1035) = - lu(k,487) * lu(k,1024)
         lu(k,1036) = lu(k,1036) - lu(k,488) * lu(k,1024)
         lu(k,1040) = lu(k,1040) - lu(k,489) * lu(k,1024)
         lu(k,1685) = lu(k,1685) - lu(k,482) * lu(k,1651)
         lu(k,1690) = lu(k,1690) - lu(k,483) * lu(k,1651)
         lu(k,1692) = lu(k,1692) - lu(k,484) * lu(k,1651)
         lu(k,1694) = lu(k,1694) - lu(k,485) * lu(k,1651)
         lu(k,1696) = lu(k,1696) - lu(k,486) * lu(k,1651)
         lu(k,1719) = lu(k,1719) - lu(k,487) * lu(k,1651)
         lu(k,1722) = lu(k,1722) - lu(k,488) * lu(k,1651)
         lu(k,1728) = lu(k,1728) - lu(k,489) * lu(k,1651)
         lu(k,2077) = lu(k,2077) - lu(k,482) * lu(k,2053)
         lu(k,2079) = lu(k,2079) - lu(k,483) * lu(k,2053)
         lu(k,2080) = - lu(k,484) * lu(k,2053)
         lu(k,2082) = lu(k,2082) - lu(k,485) * lu(k,2053)
         lu(k,2084) = lu(k,2084) - lu(k,486) * lu(k,2053)
         lu(k,2106) = lu(k,2106) - lu(k,487) * lu(k,2053)
         lu(k,2109) = lu(k,2109) - lu(k,488) * lu(k,2053)
         lu(k,2115) = lu(k,2115) - lu(k,489) * lu(k,2053)
         lu(k,492) = 1._r8 / lu(k,492)
         lu(k,493) = lu(k,493) * lu(k,492)
         lu(k,494) = lu(k,494) * lu(k,492)
         lu(k,495) = lu(k,495) * lu(k,492)
         lu(k,496) = lu(k,496) * lu(k,492)
         lu(k,497) = lu(k,497) * lu(k,492)
         lu(k,498) = lu(k,498) * lu(k,492)
         lu(k,499) = lu(k,499) * lu(k,492)
         lu(k,500) = lu(k,500) * lu(k,492)
         lu(k,616) = lu(k,616) - lu(k,493) * lu(k,615)
         lu(k,617) = lu(k,617) - lu(k,494) * lu(k,615)
         lu(k,618) = lu(k,618) - lu(k,495) * lu(k,615)
         lu(k,619) = lu(k,619) - lu(k,496) * lu(k,615)
         lu(k,620) = lu(k,620) - lu(k,497) * lu(k,615)
         lu(k,623) = lu(k,623) - lu(k,498) * lu(k,615)
         lu(k,625) = - lu(k,499) * lu(k,615)
         lu(k,627) = lu(k,627) - lu(k,500) * lu(k,615)
         lu(k,1653) = lu(k,1653) - lu(k,493) * lu(k,1652)
         lu(k,1663) = lu(k,1663) - lu(k,494) * lu(k,1652)
         lu(k,1664) = lu(k,1664) - lu(k,495) * lu(k,1652)
         lu(k,1666) = - lu(k,496) * lu(k,1652)
         lu(k,1678) = lu(k,1678) - lu(k,497) * lu(k,1652)
         lu(k,1704) = lu(k,1704) - lu(k,498) * lu(k,1652)
         lu(k,1719) = lu(k,1719) - lu(k,499) * lu(k,1652)
         lu(k,1728) = lu(k,1728) - lu(k,500) * lu(k,1652)
         lu(k,2055) = - lu(k,493) * lu(k,2054)
         lu(k,2061) = lu(k,2061) - lu(k,494) * lu(k,2054)
         lu(k,2062) = lu(k,2062) - lu(k,495) * lu(k,2054)
         lu(k,2064) = lu(k,2064) - lu(k,496) * lu(k,2054)
         lu(k,2073) = lu(k,2073) - lu(k,497) * lu(k,2054)
         lu(k,2092) = lu(k,2092) - lu(k,498) * lu(k,2054)
         lu(k,2106) = lu(k,2106) - lu(k,499) * lu(k,2054)
         lu(k,2115) = lu(k,2115) - lu(k,500) * lu(k,2054)
      end do
      end subroutine lu_fac11
      subroutine lu_fac12( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,501) = 1._r8 / lu(k,501)
         lu(k,502) = lu(k,502) * lu(k,501)
         lu(k,503) = lu(k,503) * lu(k,501)
         lu(k,504) = lu(k,504) * lu(k,501)
         lu(k,594) = - lu(k,502) * lu(k,588)
         lu(k,595) = lu(k,595) - lu(k,503) * lu(k,588)
         lu(k,599) = lu(k,599) - lu(k,504) * lu(k,588)
         lu(k,621) = - lu(k,502) * lu(k,616)
         lu(k,622) = - lu(k,503) * lu(k,616)
         lu(k,627) = lu(k,627) - lu(k,504) * lu(k,616)
         lu(k,637) = - lu(k,502) * lu(k,631)
         lu(k,638) = lu(k,638) - lu(k,503) * lu(k,631)
         lu(k,644) = lu(k,644) - lu(k,504) * lu(k,631)
         lu(k,927) = - lu(k,502) * lu(k,924)
         lu(k,929) = - lu(k,503) * lu(k,924)
         lu(k,938) = lu(k,938) - lu(k,504) * lu(k,924)
         lu(k,1196) = - lu(k,502) * lu(k,1191)
         lu(k,1200) = - lu(k,503) * lu(k,1191)
         lu(k,1220) = lu(k,1220) - lu(k,504) * lu(k,1191)
         lu(k,1478) = lu(k,1478) - lu(k,502) * lu(k,1458)
         lu(k,1488) = lu(k,1488) - lu(k,503) * lu(k,1458)
         lu(k,1519) = lu(k,1519) - lu(k,504) * lu(k,1458)
         lu(k,1679) = - lu(k,502) * lu(k,1653)
         lu(k,1694) = lu(k,1694) - lu(k,503) * lu(k,1653)
         lu(k,1728) = lu(k,1728) - lu(k,504) * lu(k,1653)
         lu(k,2074) = lu(k,2074) - lu(k,502) * lu(k,2055)
         lu(k,2082) = lu(k,2082) - lu(k,503) * lu(k,2055)
         lu(k,2115) = lu(k,2115) - lu(k,504) * lu(k,2055)
         lu(k,505) = 1._r8 / lu(k,505)
         lu(k,506) = lu(k,506) * lu(k,505)
         lu(k,507) = lu(k,507) * lu(k,505)
         lu(k,508) = lu(k,508) * lu(k,505)
         lu(k,509) = lu(k,509) * lu(k,505)
         lu(k,510) = lu(k,510) * lu(k,505)
         lu(k,511) = lu(k,511) * lu(k,505)
         lu(k,512) = lu(k,512) * lu(k,505)
         lu(k,513) = lu(k,513) * lu(k,505)
         lu(k,1163) = - lu(k,506) * lu(k,1160)
         lu(k,1164) = - lu(k,507) * lu(k,1160)
         lu(k,1165) = - lu(k,508) * lu(k,1160)
         lu(k,1179) = - lu(k,509) * lu(k,1160)
         lu(k,1181) = lu(k,1181) - lu(k,510) * lu(k,1160)
         lu(k,1184) = - lu(k,511) * lu(k,1160)
         lu(k,1185) = lu(k,1185) - lu(k,512) * lu(k,1160)
         lu(k,1186) = lu(k,1186) - lu(k,513) * lu(k,1160)
         lu(k,1484) = lu(k,1484) - lu(k,506) * lu(k,1459)
         lu(k,1485) = lu(k,1485) - lu(k,507) * lu(k,1459)
         lu(k,1487) = lu(k,1487) - lu(k,508) * lu(k,1459)
         lu(k,1510) = lu(k,1510) - lu(k,509) * lu(k,1459)
         lu(k,1513) = lu(k,1513) - lu(k,510) * lu(k,1459)
         lu(k,1516) = lu(k,1516) - lu(k,511) * lu(k,1459)
         lu(k,1517) = lu(k,1517) - lu(k,512) * lu(k,1459)
         lu(k,1519) = lu(k,1519) - lu(k,513) * lu(k,1459)
         lu(k,1690) = lu(k,1690) - lu(k,506) * lu(k,1654)
         lu(k,1691) = lu(k,1691) - lu(k,507) * lu(k,1654)
         lu(k,1693) = lu(k,1693) - lu(k,508) * lu(k,1654)
         lu(k,1719) = lu(k,1719) - lu(k,509) * lu(k,1654)
         lu(k,1722) = lu(k,1722) - lu(k,510) * lu(k,1654)
         lu(k,1725) = lu(k,1725) - lu(k,511) * lu(k,1654)
         lu(k,1726) = lu(k,1726) - lu(k,512) * lu(k,1654)
         lu(k,1728) = lu(k,1728) - lu(k,513) * lu(k,1654)
         lu(k,514) = 1._r8 / lu(k,514)
         lu(k,515) = lu(k,515) * lu(k,514)
         lu(k,516) = lu(k,516) * lu(k,514)
         lu(k,517) = lu(k,517) * lu(k,514)
         lu(k,518) = lu(k,518) * lu(k,514)
         lu(k,519) = lu(k,519) * lu(k,514)
         lu(k,520) = lu(k,520) * lu(k,514)
         lu(k,568) = lu(k,568) - lu(k,515) * lu(k,566)
         lu(k,569) = lu(k,569) - lu(k,516) * lu(k,566)
         lu(k,571) = lu(k,571) - lu(k,517) * lu(k,566)
         lu(k,572) = - lu(k,518) * lu(k,566)
         lu(k,573) = lu(k,573) - lu(k,519) * lu(k,566)
         lu(k,576) = lu(k,576) - lu(k,520) * lu(k,566)
         lu(k,741) = lu(k,741) - lu(k,515) * lu(k,740)
         lu(k,742) = lu(k,742) - lu(k,516) * lu(k,740)
         lu(k,744) = lu(k,744) - lu(k,517) * lu(k,740)
         lu(k,745) = - lu(k,518) * lu(k,740)
         lu(k,746) = lu(k,746) - lu(k,519) * lu(k,740)
         lu(k,750) = lu(k,750) - lu(k,520) * lu(k,740)
         lu(k,1418) = lu(k,1418) - lu(k,515) * lu(k,1415)
         lu(k,1419) = lu(k,1419) - lu(k,516) * lu(k,1415)
         lu(k,1421) = lu(k,1421) - lu(k,517) * lu(k,1415)
         lu(k,1424) = - lu(k,518) * lu(k,1415)
         lu(k,1427) = lu(k,1427) - lu(k,519) * lu(k,1415)
         lu(k,1433) = lu(k,1433) - lu(k,520) * lu(k,1415)
         lu(k,1804) = lu(k,1804) - lu(k,515) * lu(k,1800)
         lu(k,1805) = lu(k,1805) - lu(k,516) * lu(k,1800)
         lu(k,1807) = lu(k,1807) - lu(k,517) * lu(k,1800)
         lu(k,1812) = lu(k,1812) - lu(k,518) * lu(k,1800)
         lu(k,1818) = lu(k,1818) - lu(k,519) * lu(k,1800)
         lu(k,1824) = lu(k,1824) - lu(k,520) * lu(k,1800)
         lu(k,521) = 1._r8 / lu(k,521)
         lu(k,522) = lu(k,522) * lu(k,521)
         lu(k,523) = lu(k,523) * lu(k,521)
         lu(k,524) = lu(k,524) * lu(k,521)
         lu(k,525) = lu(k,525) * lu(k,521)
         lu(k,526) = lu(k,526) * lu(k,521)
         lu(k,1005) = lu(k,1005) - lu(k,522) * lu(k,1002)
         lu(k,1015) = lu(k,1015) - lu(k,523) * lu(k,1002)
         lu(k,1019) = - lu(k,524) * lu(k,1002)
         lu(k,1020) = lu(k,1020) - lu(k,525) * lu(k,1002)
         lu(k,1021) = lu(k,1021) - lu(k,526) * lu(k,1002)
         lu(k,1045) = lu(k,1045) - lu(k,522) * lu(k,1043)
         lu(k,1054) = lu(k,1054) - lu(k,523) * lu(k,1043)
         lu(k,1058) = lu(k,1058) - lu(k,524) * lu(k,1043)
         lu(k,1059) = lu(k,1059) - lu(k,525) * lu(k,1043)
         lu(k,1060) = lu(k,1060) - lu(k,526) * lu(k,1043)
         lu(k,1375) = lu(k,1375) - lu(k,522) * lu(k,1368)
         lu(k,1400) = lu(k,1400) - lu(k,523) * lu(k,1368)
         lu(k,1405) = lu(k,1405) - lu(k,524) * lu(k,1368)
         lu(k,1406) = lu(k,1406) - lu(k,525) * lu(k,1368)
         lu(k,1407) = lu(k,1407) - lu(k,526) * lu(k,1368)
         lu(k,1482) = lu(k,1482) - lu(k,522) * lu(k,1460)
         lu(k,1510) = lu(k,1510) - lu(k,523) * lu(k,1460)
         lu(k,1516) = lu(k,1516) - lu(k,524) * lu(k,1460)
         lu(k,1517) = lu(k,1517) - lu(k,525) * lu(k,1460)
         lu(k,1519) = lu(k,1519) - lu(k,526) * lu(k,1460)
         lu(k,1687) = lu(k,1687) - lu(k,522) * lu(k,1655)
         lu(k,1719) = lu(k,1719) - lu(k,523) * lu(k,1655)
         lu(k,1725) = lu(k,1725) - lu(k,524) * lu(k,1655)
         lu(k,1726) = lu(k,1726) - lu(k,525) * lu(k,1655)
         lu(k,1728) = lu(k,1728) - lu(k,526) * lu(k,1655)
         lu(k,529) = 1._r8 / lu(k,529)
         lu(k,530) = lu(k,530) * lu(k,529)
         lu(k,531) = lu(k,531) * lu(k,529)
         lu(k,532) = lu(k,532) * lu(k,529)
         lu(k,533) = lu(k,533) * lu(k,529)
         lu(k,534) = lu(k,534) * lu(k,529)
         lu(k,1507) = lu(k,1507) - lu(k,530) * lu(k,1461)
         lu(k,1510) = lu(k,1510) - lu(k,531) * lu(k,1461)
         lu(k,1511) = lu(k,1511) - lu(k,532) * lu(k,1461)
         lu(k,1517) = lu(k,1517) - lu(k,533) * lu(k,1461)
         lu(k,1519) = lu(k,1519) - lu(k,534) * lu(k,1461)
         lu(k,1716) = lu(k,1716) - lu(k,530) * lu(k,1656)
         lu(k,1719) = lu(k,1719) - lu(k,531) * lu(k,1656)
         lu(k,1720) = lu(k,1720) - lu(k,532) * lu(k,1656)
         lu(k,1726) = lu(k,1726) - lu(k,533) * lu(k,1656)
         lu(k,1728) = lu(k,1728) - lu(k,534) * lu(k,1656)
         lu(k,1778) = lu(k,1778) - lu(k,530) * lu(k,1743)
         lu(k,1781) = lu(k,1781) - lu(k,531) * lu(k,1743)
         lu(k,1782) = lu(k,1782) - lu(k,532) * lu(k,1743)
         lu(k,1788) = lu(k,1788) - lu(k,533) * lu(k,1743)
         lu(k,1790) = lu(k,1790) - lu(k,534) * lu(k,1743)
         lu(k,1984) = lu(k,1984) - lu(k,530) * lu(k,1965)
         lu(k,1987) = lu(k,1987) - lu(k,531) * lu(k,1965)
         lu(k,1988) = lu(k,1988) - lu(k,532) * lu(k,1965)
         lu(k,1994) = lu(k,1994) - lu(k,533) * lu(k,1965)
         lu(k,1996) = lu(k,1996) - lu(k,534) * lu(k,1965)
         lu(k,2103) = lu(k,2103) - lu(k,530) * lu(k,2056)
         lu(k,2106) = lu(k,2106) - lu(k,531) * lu(k,2056)
         lu(k,2107) = lu(k,2107) - lu(k,532) * lu(k,2056)
         lu(k,2113) = lu(k,2113) - lu(k,533) * lu(k,2056)
         lu(k,2115) = lu(k,2115) - lu(k,534) * lu(k,2056)
         lu(k,536) = 1._r8 / lu(k,536)
         lu(k,537) = lu(k,537) * lu(k,536)
         lu(k,538) = lu(k,538) * lu(k,536)
         lu(k,539) = lu(k,539) * lu(k,536)
         lu(k,540) = lu(k,540) * lu(k,536)
         lu(k,541) = lu(k,541) * lu(k,536)
         lu(k,542) = lu(k,542) * lu(k,536)
         lu(k,543) = lu(k,543) * lu(k,536)
         lu(k,544) = lu(k,544) * lu(k,536)
         lu(k,545) = lu(k,545) * lu(k,536)
         lu(k,878) = lu(k,878) - lu(k,537) * lu(k,876)
         lu(k,879) = lu(k,879) - lu(k,538) * lu(k,876)
         lu(k,881) = lu(k,881) - lu(k,539) * lu(k,876)
         lu(k,882) = lu(k,882) - lu(k,540) * lu(k,876)
         lu(k,883) = lu(k,883) - lu(k,541) * lu(k,876)
         lu(k,887) = lu(k,887) - lu(k,542) * lu(k,876)
         lu(k,888) = lu(k,888) - lu(k,543) * lu(k,876)
         lu(k,889) = lu(k,889) - lu(k,544) * lu(k,876)
         lu(k,890) = lu(k,890) - lu(k,545) * lu(k,876)
         lu(k,1463) = lu(k,1463) - lu(k,537) * lu(k,1462)
         lu(k,1479) = lu(k,1479) - lu(k,538) * lu(k,1462)
         lu(k,1481) = lu(k,1481) - lu(k,539) * lu(k,1462)
         lu(k,1493) = lu(k,1493) - lu(k,540) * lu(k,1462)
         lu(k,1503) = lu(k,1503) - lu(k,541) * lu(k,1462)
         lu(k,1510) = lu(k,1510) - lu(k,542) * lu(k,1462)
         lu(k,1513) = lu(k,1513) - lu(k,543) * lu(k,1462)
         lu(k,1517) = lu(k,1517) - lu(k,544) * lu(k,1462)
         lu(k,1519) = lu(k,1519) - lu(k,545) * lu(k,1462)
         lu(k,1659) = lu(k,1659) - lu(k,537) * lu(k,1657)
         lu(k,1681) = lu(k,1681) - lu(k,538) * lu(k,1657)
         lu(k,1685) = lu(k,1685) - lu(k,539) * lu(k,1657)
         lu(k,1699) = lu(k,1699) - lu(k,540) * lu(k,1657)
         lu(k,1710) = lu(k,1710) - lu(k,541) * lu(k,1657)
         lu(k,1719) = lu(k,1719) - lu(k,542) * lu(k,1657)
         lu(k,1722) = lu(k,1722) - lu(k,543) * lu(k,1657)
         lu(k,1726) = lu(k,1726) - lu(k,544) * lu(k,1657)
         lu(k,1728) = lu(k,1728) - lu(k,545) * lu(k,1657)
      end do
      end subroutine lu_fac12
      subroutine lu_fac13( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,547) = 1._r8 / lu(k,547)
         lu(k,548) = lu(k,548) * lu(k,547)
         lu(k,549) = lu(k,549) * lu(k,547)
         lu(k,550) = lu(k,550) * lu(k,547)
         lu(k,551) = lu(k,551) * lu(k,547)
         lu(k,552) = lu(k,552) * lu(k,547)
         lu(k,553) = lu(k,553) * lu(k,547)
         lu(k,554) = lu(k,554) * lu(k,547)
         lu(k,555) = lu(k,555) * lu(k,547)
         lu(k,556) = lu(k,556) * lu(k,547)
         lu(k,878) = lu(k,878) - lu(k,548) * lu(k,877)
         lu(k,879) = lu(k,879) - lu(k,549) * lu(k,877)
         lu(k,880) = lu(k,880) - lu(k,550) * lu(k,877)
         lu(k,881) = lu(k,881) - lu(k,551) * lu(k,877)
         lu(k,882) = lu(k,882) - lu(k,552) * lu(k,877)
         lu(k,883) = lu(k,883) - lu(k,553) * lu(k,877)
         lu(k,887) = lu(k,887) - lu(k,554) * lu(k,877)
         lu(k,888) = lu(k,888) - lu(k,555) * lu(k,877)
         lu(k,890) = lu(k,890) - lu(k,556) * lu(k,877)
         lu(k,1659) = lu(k,1659) - lu(k,548) * lu(k,1658)
         lu(k,1681) = lu(k,1681) - lu(k,549) * lu(k,1658)
         lu(k,1683) = lu(k,1683) - lu(k,550) * lu(k,1658)
         lu(k,1685) = lu(k,1685) - lu(k,551) * lu(k,1658)
         lu(k,1699) = lu(k,1699) - lu(k,552) * lu(k,1658)
         lu(k,1710) = lu(k,1710) - lu(k,553) * lu(k,1658)
         lu(k,1719) = lu(k,1719) - lu(k,554) * lu(k,1658)
         lu(k,1722) = lu(k,1722) - lu(k,555) * lu(k,1658)
         lu(k,1728) = lu(k,1728) - lu(k,556) * lu(k,1658)
         lu(k,2058) = lu(k,2058) - lu(k,548) * lu(k,2057)
         lu(k,2075) = lu(k,2075) - lu(k,549) * lu(k,2057)
         lu(k,2076) = lu(k,2076) - lu(k,550) * lu(k,2057)
         lu(k,2077) = lu(k,2077) - lu(k,551) * lu(k,2057)
         lu(k,2087) = lu(k,2087) - lu(k,552) * lu(k,2057)
         lu(k,2098) = lu(k,2098) - lu(k,553) * lu(k,2057)
         lu(k,2106) = lu(k,2106) - lu(k,554) * lu(k,2057)
         lu(k,2109) = lu(k,2109) - lu(k,555) * lu(k,2057)
         lu(k,2115) = lu(k,2115) - lu(k,556) * lu(k,2057)
         lu(k,558) = 1._r8 / lu(k,558)
         lu(k,559) = lu(k,559) * lu(k,558)
         lu(k,560) = lu(k,560) * lu(k,558)
         lu(k,561) = lu(k,561) * lu(k,558)
         lu(k,562) = lu(k,562) * lu(k,558)
         lu(k,563) = lu(k,563) * lu(k,558)
         lu(k,564) = lu(k,564) * lu(k,558)
         lu(k,882) = lu(k,882) - lu(k,559) * lu(k,878)
         lu(k,883) = lu(k,883) - lu(k,560) * lu(k,878)
         lu(k,886) = lu(k,886) - lu(k,561) * lu(k,878)
         lu(k,887) = lu(k,887) - lu(k,562) * lu(k,878)
         lu(k,889) = lu(k,889) - lu(k,563) * lu(k,878)
         lu(k,890) = lu(k,890) - lu(k,564) * lu(k,878)
         lu(k,1493) = lu(k,1493) - lu(k,559) * lu(k,1463)
         lu(k,1503) = lu(k,1503) - lu(k,560) * lu(k,1463)
         lu(k,1507) = lu(k,1507) - lu(k,561) * lu(k,1463)
         lu(k,1510) = lu(k,1510) - lu(k,562) * lu(k,1463)
         lu(k,1517) = lu(k,1517) - lu(k,563) * lu(k,1463)
         lu(k,1519) = lu(k,1519) - lu(k,564) * lu(k,1463)
         lu(k,1699) = lu(k,1699) - lu(k,559) * lu(k,1659)
         lu(k,1710) = lu(k,1710) - lu(k,560) * lu(k,1659)
         lu(k,1716) = lu(k,1716) - lu(k,561) * lu(k,1659)
         lu(k,1719) = lu(k,1719) - lu(k,562) * lu(k,1659)
         lu(k,1726) = lu(k,1726) - lu(k,563) * lu(k,1659)
         lu(k,1728) = lu(k,1728) - lu(k,564) * lu(k,1659)
         lu(k,2087) = lu(k,2087) - lu(k,559) * lu(k,2058)
         lu(k,2098) = lu(k,2098) - lu(k,560) * lu(k,2058)
         lu(k,2103) = lu(k,2103) - lu(k,561) * lu(k,2058)
         lu(k,2106) = lu(k,2106) - lu(k,562) * lu(k,2058)
         lu(k,2113) = lu(k,2113) - lu(k,563) * lu(k,2058)
         lu(k,2115) = lu(k,2115) - lu(k,564) * lu(k,2058)
         lu(k,567) = 1._r8 / lu(k,567)
         lu(k,568) = lu(k,568) * lu(k,567)
         lu(k,569) = lu(k,569) * lu(k,567)
         lu(k,570) = lu(k,570) * lu(k,567)
         lu(k,571) = lu(k,571) * lu(k,567)
         lu(k,572) = lu(k,572) * lu(k,567)
         lu(k,573) = lu(k,573) * lu(k,567)
         lu(k,574) = lu(k,574) * lu(k,567)
         lu(k,575) = lu(k,575) * lu(k,567)
         lu(k,576) = lu(k,576) * lu(k,567)
         lu(k,699) = lu(k,699) - lu(k,568) * lu(k,698)
         lu(k,700) = lu(k,700) - lu(k,569) * lu(k,698)
         lu(k,701) = lu(k,701) - lu(k,570) * lu(k,698)
         lu(k,702) = lu(k,702) - lu(k,571) * lu(k,698)
         lu(k,703) = - lu(k,572) * lu(k,698)
         lu(k,704) = lu(k,704) - lu(k,573) * lu(k,698)
         lu(k,705) = lu(k,705) - lu(k,574) * lu(k,698)
         lu(k,706) = lu(k,706) - lu(k,575) * lu(k,698)
         lu(k,707) = lu(k,707) - lu(k,576) * lu(k,698)
         lu(k,1418) = lu(k,1418) - lu(k,568) * lu(k,1416)
         lu(k,1419) = lu(k,1419) - lu(k,569) * lu(k,1416)
         lu(k,1420) = lu(k,1420) - lu(k,570) * lu(k,1416)
         lu(k,1421) = lu(k,1421) - lu(k,571) * lu(k,1416)
         lu(k,1424) = lu(k,1424) - lu(k,572) * lu(k,1416)
         lu(k,1427) = lu(k,1427) - lu(k,573) * lu(k,1416)
         lu(k,1428) = lu(k,1428) - lu(k,574) * lu(k,1416)
         lu(k,1430) = lu(k,1430) - lu(k,575) * lu(k,1416)
         lu(k,1433) = lu(k,1433) - lu(k,576) * lu(k,1416)
         lu(k,1804) = lu(k,1804) - lu(k,568) * lu(k,1801)
         lu(k,1805) = lu(k,1805) - lu(k,569) * lu(k,1801)
         lu(k,1806) = lu(k,1806) - lu(k,570) * lu(k,1801)
         lu(k,1807) = lu(k,1807) - lu(k,571) * lu(k,1801)
         lu(k,1812) = lu(k,1812) - lu(k,572) * lu(k,1801)
         lu(k,1818) = lu(k,1818) - lu(k,573) * lu(k,1801)
         lu(k,1819) = lu(k,1819) - lu(k,574) * lu(k,1801)
         lu(k,1821) = lu(k,1821) - lu(k,575) * lu(k,1801)
         lu(k,1824) = lu(k,1824) - lu(k,576) * lu(k,1801)
         lu(k,578) = 1._r8 / lu(k,578)
         lu(k,579) = lu(k,579) * lu(k,578)
         lu(k,580) = lu(k,580) * lu(k,578)
         lu(k,581) = lu(k,581) * lu(k,578)
         lu(k,582) = lu(k,582) * lu(k,578)
         lu(k,583) = lu(k,583) * lu(k,578)
         lu(k,584) = lu(k,584) * lu(k,578)
         lu(k,1123) = - lu(k,579) * lu(k,1117)
         lu(k,1125) = - lu(k,580) * lu(k,1117)
         lu(k,1127) = - lu(k,581) * lu(k,1117)
         lu(k,1131) = lu(k,1131) - lu(k,582) * lu(k,1117)
         lu(k,1132) = lu(k,1132) - lu(k,583) * lu(k,1117)
         lu(k,1137) = lu(k,1137) - lu(k,584) * lu(k,1117)
         lu(k,1169) = - lu(k,579) * lu(k,1161)
         lu(k,1170) = lu(k,1170) - lu(k,580) * lu(k,1161)
         lu(k,1174) = lu(k,1174) - lu(k,581) * lu(k,1161)
         lu(k,1179) = lu(k,1179) - lu(k,582) * lu(k,1161)
         lu(k,1181) = lu(k,1181) - lu(k,583) * lu(k,1161)
         lu(k,1186) = lu(k,1186) - lu(k,584) * lu(k,1161)
         lu(k,1203) = lu(k,1203) - lu(k,579) * lu(k,1192)
         lu(k,1204) = - lu(k,580) * lu(k,1192)
         lu(k,1208) = - lu(k,581) * lu(k,1192)
         lu(k,1213) = lu(k,1213) - lu(k,582) * lu(k,1192)
         lu(k,1215) = lu(k,1215) - lu(k,583) * lu(k,1192)
         lu(k,1220) = lu(k,1220) - lu(k,584) * lu(k,1192)
         lu(k,1700) = lu(k,1700) - lu(k,579) * lu(k,1660)
         lu(k,1703) = lu(k,1703) - lu(k,580) * lu(k,1660)
         lu(k,1708) = lu(k,1708) - lu(k,581) * lu(k,1660)
         lu(k,1719) = lu(k,1719) - lu(k,582) * lu(k,1660)
         lu(k,1722) = lu(k,1722) - lu(k,583) * lu(k,1660)
         lu(k,1728) = lu(k,1728) - lu(k,584) * lu(k,1660)
         lu(k,2088) = lu(k,2088) - lu(k,579) * lu(k,2059)
         lu(k,2091) = - lu(k,580) * lu(k,2059)
         lu(k,2096) = - lu(k,581) * lu(k,2059)
         lu(k,2106) = lu(k,2106) - lu(k,582) * lu(k,2059)
         lu(k,2109) = lu(k,2109) - lu(k,583) * lu(k,2059)
         lu(k,2115) = lu(k,2115) - lu(k,584) * lu(k,2059)
         lu(k,589) = 1._r8 / lu(k,589)
         lu(k,590) = lu(k,590) * lu(k,589)
         lu(k,591) = lu(k,591) * lu(k,589)
         lu(k,592) = lu(k,592) * lu(k,589)
         lu(k,593) = lu(k,593) * lu(k,589)
         lu(k,594) = lu(k,594) * lu(k,589)
         lu(k,595) = lu(k,595) * lu(k,589)
         lu(k,596) = lu(k,596) * lu(k,589)
         lu(k,597) = lu(k,597) * lu(k,589)
         lu(k,598) = lu(k,598) * lu(k,589)
         lu(k,599) = lu(k,599) * lu(k,589)
         lu(k,633) = lu(k,633) - lu(k,590) * lu(k,632)
         lu(k,634) = lu(k,634) - lu(k,591) * lu(k,632)
         lu(k,635) = lu(k,635) - lu(k,592) * lu(k,632)
         lu(k,636) = lu(k,636) - lu(k,593) * lu(k,632)
         lu(k,637) = lu(k,637) - lu(k,594) * lu(k,632)
         lu(k,638) = lu(k,638) - lu(k,595) * lu(k,632)
         lu(k,639) = lu(k,639) - lu(k,596) * lu(k,632)
         lu(k,640) = lu(k,640) - lu(k,597) * lu(k,632)
         lu(k,642) = - lu(k,598) * lu(k,632)
         lu(k,644) = lu(k,644) - lu(k,599) * lu(k,632)
         lu(k,1663) = lu(k,1663) - lu(k,590) * lu(k,1661)
         lu(k,1665) = lu(k,1665) - lu(k,591) * lu(k,1661)
         lu(k,1666) = lu(k,1666) - lu(k,592) * lu(k,1661)
         lu(k,1678) = lu(k,1678) - lu(k,593) * lu(k,1661)
         lu(k,1679) = lu(k,1679) - lu(k,594) * lu(k,1661)
         lu(k,1694) = lu(k,1694) - lu(k,595) * lu(k,1661)
         lu(k,1704) = lu(k,1704) - lu(k,596) * lu(k,1661)
         lu(k,1710) = lu(k,1710) - lu(k,597) * lu(k,1661)
         lu(k,1719) = lu(k,1719) - lu(k,598) * lu(k,1661)
         lu(k,1728) = lu(k,1728) - lu(k,599) * lu(k,1661)
         lu(k,2061) = lu(k,2061) - lu(k,590) * lu(k,2060)
         lu(k,2063) = lu(k,2063) - lu(k,591) * lu(k,2060)
         lu(k,2064) = lu(k,2064) - lu(k,592) * lu(k,2060)
         lu(k,2073) = lu(k,2073) - lu(k,593) * lu(k,2060)
         lu(k,2074) = lu(k,2074) - lu(k,594) * lu(k,2060)
         lu(k,2082) = lu(k,2082) - lu(k,595) * lu(k,2060)
         lu(k,2092) = lu(k,2092) - lu(k,596) * lu(k,2060)
         lu(k,2098) = lu(k,2098) - lu(k,597) * lu(k,2060)
         lu(k,2106) = lu(k,2106) - lu(k,598) * lu(k,2060)
         lu(k,2115) = lu(k,2115) - lu(k,599) * lu(k,2060)
      end do
      end subroutine lu_fac13
      subroutine lu_fac14( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,600) = 1._r8 / lu(k,600)
         lu(k,601) = lu(k,601) * lu(k,600)
         lu(k,602) = lu(k,602) * lu(k,600)
         lu(k,603) = lu(k,603) * lu(k,600)
         lu(k,604) = lu(k,604) * lu(k,600)
         lu(k,605) = lu(k,605) * lu(k,600)
         lu(k,606) = lu(k,606) * lu(k,600)
         lu(k,1318) = lu(k,1318) - lu(k,601) * lu(k,1316)
         lu(k,1320) = lu(k,1320) - lu(k,602) * lu(k,1316)
         lu(k,1323) = lu(k,1323) - lu(k,603) * lu(k,1316)
         lu(k,1324) = lu(k,1324) - lu(k,604) * lu(k,1316)
         lu(k,1325) = lu(k,1325) - lu(k,605) * lu(k,1316)
         lu(k,1326) = lu(k,1326) - lu(k,606) * lu(k,1316)
         lu(k,1425) = lu(k,1425) - lu(k,601) * lu(k,1417)
         lu(k,1427) = lu(k,1427) - lu(k,602) * lu(k,1417)
         lu(k,1431) = - lu(k,603) * lu(k,1417)
         lu(k,1432) = lu(k,1432) - lu(k,604) * lu(k,1417)
         lu(k,1433) = lu(k,1433) - lu(k,605) * lu(k,1417)
         lu(k,1435) = lu(k,1435) - lu(k,606) * lu(k,1417)
         lu(k,1711) = lu(k,1711) - lu(k,601) * lu(k,1662)
         lu(k,1715) = lu(k,1715) - lu(k,602) * lu(k,1662)
         lu(k,1719) = lu(k,1719) - lu(k,603) * lu(k,1662)
         lu(k,1720) = lu(k,1720) - lu(k,604) * lu(k,1662)
         lu(k,1721) = lu(k,1721) - lu(k,605) * lu(k,1662)
         lu(k,1724) = lu(k,1724) - lu(k,606) * lu(k,1662)
         lu(k,1774) = lu(k,1774) - lu(k,601) * lu(k,1744)
         lu(k,1777) = lu(k,1777) - lu(k,602) * lu(k,1744)
         lu(k,1781) = lu(k,1781) - lu(k,603) * lu(k,1744)
         lu(k,1782) = lu(k,1782) - lu(k,604) * lu(k,1744)
         lu(k,1783) = lu(k,1783) - lu(k,605) * lu(k,1744)
         lu(k,1786) = lu(k,1786) - lu(k,606) * lu(k,1744)
         lu(k,1814) = lu(k,1814) - lu(k,601) * lu(k,1802)
         lu(k,1818) = lu(k,1818) - lu(k,602) * lu(k,1802)
         lu(k,1822) = lu(k,1822) - lu(k,603) * lu(k,1802)
         lu(k,1823) = lu(k,1823) - lu(k,604) * lu(k,1802)
         lu(k,1824) = lu(k,1824) - lu(k,605) * lu(k,1802)
         lu(k,1827) = lu(k,1827) - lu(k,606) * lu(k,1802)
         lu(k,607) = 1._r8 / lu(k,607)
         lu(k,608) = lu(k,608) * lu(k,607)
         lu(k,609) = lu(k,609) * lu(k,607)
         lu(k,610) = lu(k,610) * lu(k,607)
         lu(k,611) = lu(k,611) * lu(k,607)
         lu(k,612) = lu(k,612) * lu(k,607)
         lu(k,620) = lu(k,620) - lu(k,608) * lu(k,617)
         lu(k,622) = lu(k,622) - lu(k,609) * lu(k,617)
         lu(k,624) = lu(k,624) - lu(k,610) * lu(k,617)
         lu(k,626) = lu(k,626) - lu(k,611) * lu(k,617)
         lu(k,627) = lu(k,627) - lu(k,612) * lu(k,617)
         lu(k,636) = lu(k,636) - lu(k,608) * lu(k,633)
         lu(k,638) = lu(k,638) - lu(k,609) * lu(k,633)
         lu(k,641) = lu(k,641) - lu(k,610) * lu(k,633)
         lu(k,643) = lu(k,643) - lu(k,611) * lu(k,633)
         lu(k,644) = lu(k,644) - lu(k,612) * lu(k,633)
         lu(k,1477) = lu(k,1477) - lu(k,608) * lu(k,1464)
         lu(k,1488) = lu(k,1488) - lu(k,609) * lu(k,1464)
         lu(k,1507) = lu(k,1507) - lu(k,610) * lu(k,1464)
         lu(k,1517) = lu(k,1517) - lu(k,611) * lu(k,1464)
         lu(k,1519) = lu(k,1519) - lu(k,612) * lu(k,1464)
         lu(k,1678) = lu(k,1678) - lu(k,608) * lu(k,1663)
         lu(k,1694) = lu(k,1694) - lu(k,609) * lu(k,1663)
         lu(k,1716) = lu(k,1716) - lu(k,610) * lu(k,1663)
         lu(k,1726) = lu(k,1726) - lu(k,611) * lu(k,1663)
         lu(k,1728) = lu(k,1728) - lu(k,612) * lu(k,1663)
         lu(k,1970) = - lu(k,608) * lu(k,1966)
         lu(k,1975) = - lu(k,609) * lu(k,1966)
         lu(k,1984) = lu(k,1984) - lu(k,610) * lu(k,1966)
         lu(k,1994) = lu(k,1994) - lu(k,611) * lu(k,1966)
         lu(k,1996) = lu(k,1996) - lu(k,612) * lu(k,1966)
         lu(k,2073) = lu(k,2073) - lu(k,608) * lu(k,2061)
         lu(k,2082) = lu(k,2082) - lu(k,609) * lu(k,2061)
         lu(k,2103) = lu(k,2103) - lu(k,610) * lu(k,2061)
         lu(k,2113) = lu(k,2113) - lu(k,611) * lu(k,2061)
         lu(k,2115) = lu(k,2115) - lu(k,612) * lu(k,2061)
         lu(k,618) = 1._r8 / lu(k,618)
         lu(k,619) = lu(k,619) * lu(k,618)
         lu(k,620) = lu(k,620) * lu(k,618)
         lu(k,621) = lu(k,621) * lu(k,618)
         lu(k,622) = lu(k,622) * lu(k,618)
         lu(k,623) = lu(k,623) * lu(k,618)
         lu(k,624) = lu(k,624) * lu(k,618)
         lu(k,625) = lu(k,625) * lu(k,618)
         lu(k,626) = lu(k,626) * lu(k,618)
         lu(k,627) = lu(k,627) * lu(k,618)
         lu(k,1467) = lu(k,1467) - lu(k,619) * lu(k,1465)
         lu(k,1477) = lu(k,1477) - lu(k,620) * lu(k,1465)
         lu(k,1478) = lu(k,1478) - lu(k,621) * lu(k,1465)
         lu(k,1488) = lu(k,1488) - lu(k,622) * lu(k,1465)
         lu(k,1497) = lu(k,1497) - lu(k,623) * lu(k,1465)
         lu(k,1507) = lu(k,1507) - lu(k,624) * lu(k,1465)
         lu(k,1510) = lu(k,1510) - lu(k,625) * lu(k,1465)
         lu(k,1517) = lu(k,1517) - lu(k,626) * lu(k,1465)
         lu(k,1519) = lu(k,1519) - lu(k,627) * lu(k,1465)
         lu(k,1666) = lu(k,1666) - lu(k,619) * lu(k,1664)
         lu(k,1678) = lu(k,1678) - lu(k,620) * lu(k,1664)
         lu(k,1679) = lu(k,1679) - lu(k,621) * lu(k,1664)
         lu(k,1694) = lu(k,1694) - lu(k,622) * lu(k,1664)
         lu(k,1704) = lu(k,1704) - lu(k,623) * lu(k,1664)
         lu(k,1716) = lu(k,1716) - lu(k,624) * lu(k,1664)
         lu(k,1719) = lu(k,1719) - lu(k,625) * lu(k,1664)
         lu(k,1726) = lu(k,1726) - lu(k,626) * lu(k,1664)
         lu(k,1728) = lu(k,1728) - lu(k,627) * lu(k,1664)
         lu(k,2064) = lu(k,2064) - lu(k,619) * lu(k,2062)
         lu(k,2073) = lu(k,2073) - lu(k,620) * lu(k,2062)
         lu(k,2074) = lu(k,2074) - lu(k,621) * lu(k,2062)
         lu(k,2082) = lu(k,2082) - lu(k,622) * lu(k,2062)
         lu(k,2092) = lu(k,2092) - lu(k,623) * lu(k,2062)
         lu(k,2103) = lu(k,2103) - lu(k,624) * lu(k,2062)
         lu(k,2106) = lu(k,2106) - lu(k,625) * lu(k,2062)
         lu(k,2113) = lu(k,2113) - lu(k,626) * lu(k,2062)
         lu(k,2115) = lu(k,2115) - lu(k,627) * lu(k,2062)
         lu(k,634) = 1._r8 / lu(k,634)
         lu(k,635) = lu(k,635) * lu(k,634)
         lu(k,636) = lu(k,636) * lu(k,634)
         lu(k,637) = lu(k,637) * lu(k,634)
         lu(k,638) = lu(k,638) * lu(k,634)
         lu(k,639) = lu(k,639) * lu(k,634)
         lu(k,640) = lu(k,640) * lu(k,634)
         lu(k,641) = lu(k,641) * lu(k,634)
         lu(k,642) = lu(k,642) * lu(k,634)
         lu(k,643) = lu(k,643) * lu(k,634)
         lu(k,644) = lu(k,644) * lu(k,634)
         lu(k,1467) = lu(k,1467) - lu(k,635) * lu(k,1466)
         lu(k,1477) = lu(k,1477) - lu(k,636) * lu(k,1466)
         lu(k,1478) = lu(k,1478) - lu(k,637) * lu(k,1466)
         lu(k,1488) = lu(k,1488) - lu(k,638) * lu(k,1466)
         lu(k,1497) = lu(k,1497) - lu(k,639) * lu(k,1466)
         lu(k,1503) = lu(k,1503) - lu(k,640) * lu(k,1466)
         lu(k,1507) = lu(k,1507) - lu(k,641) * lu(k,1466)
         lu(k,1510) = lu(k,1510) - lu(k,642) * lu(k,1466)
         lu(k,1517) = lu(k,1517) - lu(k,643) * lu(k,1466)
         lu(k,1519) = lu(k,1519) - lu(k,644) * lu(k,1466)
         lu(k,1666) = lu(k,1666) - lu(k,635) * lu(k,1665)
         lu(k,1678) = lu(k,1678) - lu(k,636) * lu(k,1665)
         lu(k,1679) = lu(k,1679) - lu(k,637) * lu(k,1665)
         lu(k,1694) = lu(k,1694) - lu(k,638) * lu(k,1665)
         lu(k,1704) = lu(k,1704) - lu(k,639) * lu(k,1665)
         lu(k,1710) = lu(k,1710) - lu(k,640) * lu(k,1665)
         lu(k,1716) = lu(k,1716) - lu(k,641) * lu(k,1665)
         lu(k,1719) = lu(k,1719) - lu(k,642) * lu(k,1665)
         lu(k,1726) = lu(k,1726) - lu(k,643) * lu(k,1665)
         lu(k,1728) = lu(k,1728) - lu(k,644) * lu(k,1665)
         lu(k,2064) = lu(k,2064) - lu(k,635) * lu(k,2063)
         lu(k,2073) = lu(k,2073) - lu(k,636) * lu(k,2063)
         lu(k,2074) = lu(k,2074) - lu(k,637) * lu(k,2063)
         lu(k,2082) = lu(k,2082) - lu(k,638) * lu(k,2063)
         lu(k,2092) = lu(k,2092) - lu(k,639) * lu(k,2063)
         lu(k,2098) = lu(k,2098) - lu(k,640) * lu(k,2063)
         lu(k,2103) = lu(k,2103) - lu(k,641) * lu(k,2063)
         lu(k,2106) = lu(k,2106) - lu(k,642) * lu(k,2063)
         lu(k,2113) = lu(k,2113) - lu(k,643) * lu(k,2063)
         lu(k,2115) = lu(k,2115) - lu(k,644) * lu(k,2063)
         lu(k,645) = 1._r8 / lu(k,645)
         lu(k,646) = lu(k,646) * lu(k,645)
         lu(k,647) = lu(k,647) * lu(k,645)
         lu(k,648) = lu(k,648) * lu(k,645)
         lu(k,649) = lu(k,649) * lu(k,645)
         lu(k,650) = lu(k,650) * lu(k,645)
         lu(k,651) = lu(k,651) * lu(k,645)
         lu(k,652) = lu(k,652) * lu(k,645)
         lu(k,1488) = lu(k,1488) - lu(k,646) * lu(k,1467)
         lu(k,1497) = lu(k,1497) - lu(k,647) * lu(k,1467)
         lu(k,1505) = lu(k,1505) - lu(k,648) * lu(k,1467)
         lu(k,1507) = lu(k,1507) - lu(k,649) * lu(k,1467)
         lu(k,1510) = lu(k,1510) - lu(k,650) * lu(k,1467)
         lu(k,1517) = lu(k,1517) - lu(k,651) * lu(k,1467)
         lu(k,1519) = lu(k,1519) - lu(k,652) * lu(k,1467)
         lu(k,1694) = lu(k,1694) - lu(k,646) * lu(k,1666)
         lu(k,1704) = lu(k,1704) - lu(k,647) * lu(k,1666)
         lu(k,1714) = lu(k,1714) - lu(k,648) * lu(k,1666)
         lu(k,1716) = lu(k,1716) - lu(k,649) * lu(k,1666)
         lu(k,1719) = lu(k,1719) - lu(k,650) * lu(k,1666)
         lu(k,1726) = lu(k,1726) - lu(k,651) * lu(k,1666)
         lu(k,1728) = lu(k,1728) - lu(k,652) * lu(k,1666)
         lu(k,1975) = lu(k,1975) - lu(k,646) * lu(k,1967)
         lu(k,1976) = - lu(k,647) * lu(k,1967)
         lu(k,1982) = lu(k,1982) - lu(k,648) * lu(k,1967)
         lu(k,1984) = lu(k,1984) - lu(k,649) * lu(k,1967)
         lu(k,1987) = lu(k,1987) - lu(k,650) * lu(k,1967)
         lu(k,1994) = lu(k,1994) - lu(k,651) * lu(k,1967)
         lu(k,1996) = lu(k,1996) - lu(k,652) * lu(k,1967)
         lu(k,2082) = lu(k,2082) - lu(k,646) * lu(k,2064)
         lu(k,2092) = lu(k,2092) - lu(k,647) * lu(k,2064)
         lu(k,2101) = lu(k,2101) - lu(k,648) * lu(k,2064)
         lu(k,2103) = lu(k,2103) - lu(k,649) * lu(k,2064)
         lu(k,2106) = lu(k,2106) - lu(k,650) * lu(k,2064)
         lu(k,2113) = lu(k,2113) - lu(k,651) * lu(k,2064)
         lu(k,2115) = lu(k,2115) - lu(k,652) * lu(k,2064)
         lu(k,654) = 1._r8 / lu(k,654)
         lu(k,655) = lu(k,655) * lu(k,654)
         lu(k,656) = lu(k,656) * lu(k,654)
         lu(k,657) = lu(k,657) * lu(k,654)
         lu(k,658) = lu(k,658) * lu(k,654)
         lu(k,659) = lu(k,659) * lu(k,654)
         lu(k,660) = lu(k,660) * lu(k,654)
         lu(k,661) = lu(k,661) * lu(k,654)
         lu(k,1337) = lu(k,1337) - lu(k,655) * lu(k,1334)
         lu(k,1338) = lu(k,1338) - lu(k,656) * lu(k,1334)
         lu(k,1339) = lu(k,1339) - lu(k,657) * lu(k,1334)
         lu(k,1341) = lu(k,1341) - lu(k,658) * lu(k,1334)
         lu(k,1342) = lu(k,1342) - lu(k,659) * lu(k,1334)
         lu(k,1347) = - lu(k,660) * lu(k,1334)
         lu(k,1349) = lu(k,1349) - lu(k,661) * lu(k,1334)
         lu(k,1815) = lu(k,1815) - lu(k,655) * lu(k,1803)
         lu(k,1816) = lu(k,1816) - lu(k,656) * lu(k,1803)
         lu(k,1820) = lu(k,1820) - lu(k,657) * lu(k,1803)
         lu(k,1822) = lu(k,1822) - lu(k,658) * lu(k,1803)
         lu(k,1824) = lu(k,1824) - lu(k,659) * lu(k,1803)
         lu(k,1830) = lu(k,1830) - lu(k,660) * lu(k,1803)
         lu(k,1833) = lu(k,1833) - lu(k,661) * lu(k,1803)
         lu(k,1980) = - lu(k,655) * lu(k,1968)
         lu(k,1981) = lu(k,1981) - lu(k,656) * lu(k,1968)
         lu(k,1985) = - lu(k,657) * lu(k,1968)
         lu(k,1987) = lu(k,1987) - lu(k,658) * lu(k,1968)
         lu(k,1989) = lu(k,1989) - lu(k,659) * lu(k,1968)
         lu(k,1995) = lu(k,1995) - lu(k,660) * lu(k,1968)
         lu(k,1998) = lu(k,1998) - lu(k,661) * lu(k,1968)
         lu(k,2005) = - lu(k,655) * lu(k,2002)
         lu(k,2006) = lu(k,2006) - lu(k,656) * lu(k,2002)
         lu(k,2009) = lu(k,2009) - lu(k,657) * lu(k,2002)
         lu(k,2011) = lu(k,2011) - lu(k,658) * lu(k,2002)
         lu(k,2013) = lu(k,2013) - lu(k,659) * lu(k,2002)
         lu(k,2019) = lu(k,2019) - lu(k,660) * lu(k,2002)
         lu(k,2022) = - lu(k,661) * lu(k,2002)
         lu(k,2099) = lu(k,2099) - lu(k,655) * lu(k,2065)
         lu(k,2100) = lu(k,2100) - lu(k,656) * lu(k,2065)
         lu(k,2104) = lu(k,2104) - lu(k,657) * lu(k,2065)
         lu(k,2106) = lu(k,2106) - lu(k,658) * lu(k,2065)
         lu(k,2108) = lu(k,2108) - lu(k,659) * lu(k,2065)
         lu(k,2114) = lu(k,2114) - lu(k,660) * lu(k,2065)
         lu(k,2117) = lu(k,2117) - lu(k,661) * lu(k,2065)
      end do
      end subroutine lu_fac14
      subroutine lu_fac15( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,664) = 1._r8 / lu(k,664)
         lu(k,665) = lu(k,665) * lu(k,664)
         lu(k,666) = lu(k,666) * lu(k,664)
         lu(k,667) = lu(k,667) * lu(k,664)
         lu(k,668) = lu(k,668) * lu(k,664)
         lu(k,669) = lu(k,669) * lu(k,664)
         lu(k,670) = lu(k,670) * lu(k,664)
         lu(k,671) = lu(k,671) * lu(k,664)
         lu(k,1484) = lu(k,1484) - lu(k,665) * lu(k,1468)
         lu(k,1506) = lu(k,1506) - lu(k,666) * lu(k,1468)
         lu(k,1507) = lu(k,1507) - lu(k,667) * lu(k,1468)
         lu(k,1510) = lu(k,1510) - lu(k,668) * lu(k,1468)
         lu(k,1513) = lu(k,1513) - lu(k,669) * lu(k,1468)
         lu(k,1517) = lu(k,1517) - lu(k,670) * lu(k,1468)
         lu(k,1519) = lu(k,1519) - lu(k,671) * lu(k,1468)
         lu(k,1533) = - lu(k,665) * lu(k,1527)
         lu(k,1541) = lu(k,1541) - lu(k,666) * lu(k,1527)
         lu(k,1542) = - lu(k,667) * lu(k,1527)
         lu(k,1545) = lu(k,1545) - lu(k,668) * lu(k,1527)
         lu(k,1548) = lu(k,1548) - lu(k,669) * lu(k,1527)
         lu(k,1552) = - lu(k,670) * lu(k,1527)
         lu(k,1554) = lu(k,1554) - lu(k,671) * lu(k,1527)
         lu(k,1690) = lu(k,1690) - lu(k,665) * lu(k,1667)
         lu(k,1715) = lu(k,1715) - lu(k,666) * lu(k,1667)
         lu(k,1716) = lu(k,1716) - lu(k,667) * lu(k,1667)
         lu(k,1719) = lu(k,1719) - lu(k,668) * lu(k,1667)
         lu(k,1722) = lu(k,1722) - lu(k,669) * lu(k,1667)
         lu(k,1726) = lu(k,1726) - lu(k,670) * lu(k,1667)
         lu(k,1728) = lu(k,1728) - lu(k,671) * lu(k,1667)
         lu(k,1756) = - lu(k,665) * lu(k,1745)
         lu(k,1777) = lu(k,1777) - lu(k,666) * lu(k,1745)
         lu(k,1778) = lu(k,1778) - lu(k,667) * lu(k,1745)
         lu(k,1781) = lu(k,1781) - lu(k,668) * lu(k,1745)
         lu(k,1784) = lu(k,1784) - lu(k,669) * lu(k,1745)
         lu(k,1788) = lu(k,1788) - lu(k,670) * lu(k,1745)
         lu(k,1790) = lu(k,1790) - lu(k,671) * lu(k,1745)
         lu(k,2079) = lu(k,2079) - lu(k,665) * lu(k,2066)
         lu(k,2102) = lu(k,2102) - lu(k,666) * lu(k,2066)
         lu(k,2103) = lu(k,2103) - lu(k,667) * lu(k,2066)
         lu(k,2106) = lu(k,2106) - lu(k,668) * lu(k,2066)
         lu(k,2109) = lu(k,2109) - lu(k,669) * lu(k,2066)
         lu(k,2113) = lu(k,2113) - lu(k,670) * lu(k,2066)
         lu(k,2115) = lu(k,2115) - lu(k,671) * lu(k,2066)
         lu(k,673) = 1._r8 / lu(k,673)
         lu(k,674) = lu(k,674) * lu(k,673)
         lu(k,675) = lu(k,675) * lu(k,673)
         lu(k,676) = lu(k,676) * lu(k,673)
         lu(k,677) = lu(k,677) * lu(k,673)
         lu(k,678) = lu(k,678) * lu(k,673)
         lu(k,679) = lu(k,679) * lu(k,673)
         lu(k,680) = lu(k,680) * lu(k,673)
         lu(k,1104) = lu(k,1104) - lu(k,674) * lu(k,1103)
         lu(k,1106) = - lu(k,675) * lu(k,1103)
         lu(k,1109) = lu(k,1109) - lu(k,676) * lu(k,1103)
         lu(k,1111) = - lu(k,677) * lu(k,1103)
         lu(k,1112) = lu(k,1112) - lu(k,678) * lu(k,1103)
         lu(k,1113) = - lu(k,679) * lu(k,1103)
         lu(k,1114) = lu(k,1114) - lu(k,680) * lu(k,1103)
         lu(k,1563) = lu(k,1563) - lu(k,674) * lu(k,1561)
         lu(k,1566) = lu(k,1566) - lu(k,675) * lu(k,1561)
         lu(k,1571) = lu(k,1571) - lu(k,676) * lu(k,1561)
         lu(k,1575) = - lu(k,677) * lu(k,1561)
         lu(k,1576) = lu(k,1576) - lu(k,678) * lu(k,1561)
         lu(k,1577) = - lu(k,679) * lu(k,1561)
         lu(k,1582) = lu(k,1582) - lu(k,680) * lu(k,1561)
         lu(k,1701) = lu(k,1701) - lu(k,674) * lu(k,1668)
         lu(k,1714) = lu(k,1714) - lu(k,675) * lu(k,1668)
         lu(k,1719) = lu(k,1719) - lu(k,676) * lu(k,1668)
         lu(k,1723) = lu(k,1723) - lu(k,677) * lu(k,1668)
         lu(k,1724) = lu(k,1724) - lu(k,678) * lu(k,1668)
         lu(k,1725) = lu(k,1725) - lu(k,679) * lu(k,1668)
         lu(k,1730) = lu(k,1730) - lu(k,680) * lu(k,1668)
         lu(k,1937) = - lu(k,674) * lu(k,1936)
         lu(k,1940) = - lu(k,675) * lu(k,1936)
         lu(k,1945) = lu(k,1945) - lu(k,676) * lu(k,1936)
         lu(k,1949) = lu(k,1949) - lu(k,677) * lu(k,1936)
         lu(k,1950) = lu(k,1950) - lu(k,678) * lu(k,1936)
         lu(k,1951) = lu(k,1951) - lu(k,679) * lu(k,1936)
         lu(k,1956) = lu(k,1956) - lu(k,680) * lu(k,1936)
         lu(k,2150) = lu(k,2150) - lu(k,674) * lu(k,2148)
         lu(k,2154) = - lu(k,675) * lu(k,2148)
         lu(k,2159) = lu(k,2159) - lu(k,676) * lu(k,2148)
         lu(k,2163) = - lu(k,677) * lu(k,2148)
         lu(k,2164) = lu(k,2164) - lu(k,678) * lu(k,2148)
         lu(k,2165) = - lu(k,679) * lu(k,2148)
         lu(k,2170) = lu(k,2170) - lu(k,680) * lu(k,2148)
         lu(k,681) = 1._r8 / lu(k,681)
         lu(k,682) = lu(k,682) * lu(k,681)
         lu(k,683) = lu(k,683) * lu(k,681)
         lu(k,684) = lu(k,684) * lu(k,681)
         lu(k,685) = lu(k,685) * lu(k,681)
         lu(k,686) = lu(k,686) * lu(k,681)
         lu(k,687) = lu(k,687) * lu(k,681)
         lu(k,688) = lu(k,688) * lu(k,681)
         lu(k,700) = lu(k,700) - lu(k,682) * lu(k,699)
         lu(k,701) = lu(k,701) - lu(k,683) * lu(k,699)
         lu(k,702) = lu(k,702) - lu(k,684) * lu(k,699)
         lu(k,704) = lu(k,704) - lu(k,685) * lu(k,699)
         lu(k,705) = lu(k,705) - lu(k,686) * lu(k,699)
         lu(k,706) = lu(k,706) - lu(k,687) * lu(k,699)
         lu(k,707) = lu(k,707) - lu(k,688) * lu(k,699)
         lu(k,742) = lu(k,742) - lu(k,682) * lu(k,741)
         lu(k,743) = lu(k,743) - lu(k,683) * lu(k,741)
         lu(k,744) = lu(k,744) - lu(k,684) * lu(k,741)
         lu(k,746) = lu(k,746) - lu(k,685) * lu(k,741)
         lu(k,747) = lu(k,747) - lu(k,686) * lu(k,741)
         lu(k,748) = - lu(k,687) * lu(k,741)
         lu(k,750) = lu(k,750) - lu(k,688) * lu(k,741)
         lu(k,1419) = lu(k,1419) - lu(k,682) * lu(k,1418)
         lu(k,1420) = lu(k,1420) - lu(k,683) * lu(k,1418)
         lu(k,1421) = lu(k,1421) - lu(k,684) * lu(k,1418)
         lu(k,1427) = lu(k,1427) - lu(k,685) * lu(k,1418)
         lu(k,1428) = lu(k,1428) - lu(k,686) * lu(k,1418)
         lu(k,1430) = lu(k,1430) - lu(k,687) * lu(k,1418)
         lu(k,1433) = lu(k,1433) - lu(k,688) * lu(k,1418)
         lu(k,1470) = lu(k,1470) - lu(k,682) * lu(k,1469)
         lu(k,1471) = lu(k,1471) - lu(k,683) * lu(k,1469)
         lu(k,1475) = lu(k,1475) - lu(k,684) * lu(k,1469)
         lu(k,1506) = lu(k,1506) - lu(k,685) * lu(k,1469)
         lu(k,1507) = lu(k,1507) - lu(k,686) * lu(k,1469)
         lu(k,1509) = - lu(k,687) * lu(k,1469)
         lu(k,1512) = lu(k,1512) - lu(k,688) * lu(k,1469)
         lu(k,1805) = lu(k,1805) - lu(k,682) * lu(k,1804)
         lu(k,1806) = lu(k,1806) - lu(k,683) * lu(k,1804)
         lu(k,1807) = lu(k,1807) - lu(k,684) * lu(k,1804)
         lu(k,1818) = lu(k,1818) - lu(k,685) * lu(k,1804)
         lu(k,1819) = lu(k,1819) - lu(k,686) * lu(k,1804)
         lu(k,1821) = lu(k,1821) - lu(k,687) * lu(k,1804)
         lu(k,1824) = lu(k,1824) - lu(k,688) * lu(k,1804)
         lu(k,690) = 1._r8 / lu(k,690)
         lu(k,691) = lu(k,691) * lu(k,690)
         lu(k,692) = lu(k,692) * lu(k,690)
         lu(k,693) = lu(k,693) * lu(k,690)
         lu(k,694) = lu(k,694) * lu(k,690)
         lu(k,695) = lu(k,695) * lu(k,690)
         lu(k,696) = lu(k,696) * lu(k,690)
         lu(k,701) = lu(k,701) - lu(k,691) * lu(k,700)
         lu(k,702) = lu(k,702) - lu(k,692) * lu(k,700)
         lu(k,704) = lu(k,704) - lu(k,693) * lu(k,700)
         lu(k,705) = lu(k,705) - lu(k,694) * lu(k,700)
         lu(k,706) = lu(k,706) - lu(k,695) * lu(k,700)
         lu(k,707) = lu(k,707) - lu(k,696) * lu(k,700)
         lu(k,743) = lu(k,743) - lu(k,691) * lu(k,742)
         lu(k,744) = lu(k,744) - lu(k,692) * lu(k,742)
         lu(k,746) = lu(k,746) - lu(k,693) * lu(k,742)
         lu(k,747) = lu(k,747) - lu(k,694) * lu(k,742)
         lu(k,748) = lu(k,748) - lu(k,695) * lu(k,742)
         lu(k,750) = lu(k,750) - lu(k,696) * lu(k,742)
         lu(k,1420) = lu(k,1420) - lu(k,691) * lu(k,1419)
         lu(k,1421) = lu(k,1421) - lu(k,692) * lu(k,1419)
         lu(k,1427) = lu(k,1427) - lu(k,693) * lu(k,1419)
         lu(k,1428) = lu(k,1428) - lu(k,694) * lu(k,1419)
         lu(k,1430) = lu(k,1430) - lu(k,695) * lu(k,1419)
         lu(k,1433) = lu(k,1433) - lu(k,696) * lu(k,1419)
         lu(k,1471) = lu(k,1471) - lu(k,691) * lu(k,1470)
         lu(k,1475) = lu(k,1475) - lu(k,692) * lu(k,1470)
         lu(k,1506) = lu(k,1506) - lu(k,693) * lu(k,1470)
         lu(k,1507) = lu(k,1507) - lu(k,694) * lu(k,1470)
         lu(k,1509) = lu(k,1509) - lu(k,695) * lu(k,1470)
         lu(k,1512) = lu(k,1512) - lu(k,696) * lu(k,1470)
         lu(k,1806) = lu(k,1806) - lu(k,691) * lu(k,1805)
         lu(k,1807) = lu(k,1807) - lu(k,692) * lu(k,1805)
         lu(k,1818) = lu(k,1818) - lu(k,693) * lu(k,1805)
         lu(k,1819) = lu(k,1819) - lu(k,694) * lu(k,1805)
         lu(k,1821) = lu(k,1821) - lu(k,695) * lu(k,1805)
         lu(k,1824) = lu(k,1824) - lu(k,696) * lu(k,1805)
         lu(k,701) = 1._r8 / lu(k,701)
         lu(k,702) = lu(k,702) * lu(k,701)
         lu(k,703) = lu(k,703) * lu(k,701)
         lu(k,704) = lu(k,704) * lu(k,701)
         lu(k,705) = lu(k,705) * lu(k,701)
         lu(k,706) = lu(k,706) * lu(k,701)
         lu(k,707) = lu(k,707) * lu(k,701)
         lu(k,744) = lu(k,744) - lu(k,702) * lu(k,743)
         lu(k,745) = lu(k,745) - lu(k,703) * lu(k,743)
         lu(k,746) = lu(k,746) - lu(k,704) * lu(k,743)
         lu(k,747) = lu(k,747) - lu(k,705) * lu(k,743)
         lu(k,748) = lu(k,748) - lu(k,706) * lu(k,743)
         lu(k,750) = lu(k,750) - lu(k,707) * lu(k,743)
         lu(k,1421) = lu(k,1421) - lu(k,702) * lu(k,1420)
         lu(k,1424) = lu(k,1424) - lu(k,703) * lu(k,1420)
         lu(k,1427) = lu(k,1427) - lu(k,704) * lu(k,1420)
         lu(k,1428) = lu(k,1428) - lu(k,705) * lu(k,1420)
         lu(k,1430) = lu(k,1430) - lu(k,706) * lu(k,1420)
         lu(k,1433) = lu(k,1433) - lu(k,707) * lu(k,1420)
         lu(k,1475) = lu(k,1475) - lu(k,702) * lu(k,1471)
         lu(k,1488) = lu(k,1488) - lu(k,703) * lu(k,1471)
         lu(k,1506) = lu(k,1506) - lu(k,704) * lu(k,1471)
         lu(k,1507) = lu(k,1507) - lu(k,705) * lu(k,1471)
         lu(k,1509) = lu(k,1509) - lu(k,706) * lu(k,1471)
         lu(k,1512) = lu(k,1512) - lu(k,707) * lu(k,1471)
         lu(k,1807) = lu(k,1807) - lu(k,702) * lu(k,1806)
         lu(k,1812) = lu(k,1812) - lu(k,703) * lu(k,1806)
         lu(k,1818) = lu(k,1818) - lu(k,704) * lu(k,1806)
         lu(k,1819) = lu(k,1819) - lu(k,705) * lu(k,1806)
         lu(k,1821) = lu(k,1821) - lu(k,706) * lu(k,1806)
         lu(k,1824) = lu(k,1824) - lu(k,707) * lu(k,1806)
      end do
      end subroutine lu_fac15
      subroutine lu_fac16( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,708) = 1._r8 / lu(k,708)
         lu(k,709) = lu(k,709) * lu(k,708)
         lu(k,710) = lu(k,710) * lu(k,708)
         lu(k,711) = lu(k,711) * lu(k,708)
         lu(k,845) = lu(k,845) - lu(k,709) * lu(k,839)
         lu(k,846) = lu(k,846) - lu(k,710) * lu(k,839)
         lu(k,848) = lu(k,848) - lu(k,711) * lu(k,839)
         lu(k,1015) = lu(k,1015) - lu(k,709) * lu(k,1003)
         lu(k,1016) = lu(k,1016) - lu(k,710) * lu(k,1003)
         lu(k,1021) = lu(k,1021) - lu(k,711) * lu(k,1003)
         lu(k,1035) = lu(k,1035) - lu(k,709) * lu(k,1025)
         lu(k,1036) = lu(k,1036) - lu(k,710) * lu(k,1025)
         lu(k,1040) = lu(k,1040) - lu(k,711) * lu(k,1025)
         lu(k,1054) = lu(k,1054) - lu(k,709) * lu(k,1044)
         lu(k,1055) = lu(k,1055) - lu(k,710) * lu(k,1044)
         lu(k,1060) = lu(k,1060) - lu(k,711) * lu(k,1044)
         lu(k,1070) = lu(k,1070) - lu(k,709) * lu(k,1063)
         lu(k,1071) = lu(k,1071) - lu(k,710) * lu(k,1063)
         lu(k,1073) = lu(k,1073) - lu(k,711) * lu(k,1063)
         lu(k,1096) = lu(k,1096) - lu(k,709) * lu(k,1086)
         lu(k,1097) = lu(k,1097) - lu(k,710) * lu(k,1086)
         lu(k,1101) = lu(k,1101) - lu(k,711) * lu(k,1086)
         lu(k,1131) = lu(k,1131) - lu(k,709) * lu(k,1118)
         lu(k,1132) = lu(k,1132) - lu(k,710) * lu(k,1118)
         lu(k,1137) = lu(k,1137) - lu(k,711) * lu(k,1118)
         lu(k,1179) = lu(k,1179) - lu(k,709) * lu(k,1162)
         lu(k,1181) = lu(k,1181) - lu(k,710) * lu(k,1162)
         lu(k,1186) = lu(k,1186) - lu(k,711) * lu(k,1162)
         lu(k,1213) = lu(k,1213) - lu(k,709) * lu(k,1193)
         lu(k,1215) = lu(k,1215) - lu(k,710) * lu(k,1193)
         lu(k,1220) = lu(k,1220) - lu(k,711) * lu(k,1193)
         lu(k,1236) = lu(k,1236) - lu(k,709) * lu(k,1223)
         lu(k,1237) = lu(k,1237) - lu(k,710) * lu(k,1223)
         lu(k,1242) = lu(k,1242) - lu(k,711) * lu(k,1223)
         lu(k,1400) = lu(k,1400) - lu(k,709) * lu(k,1369)
         lu(k,1402) = lu(k,1402) - lu(k,710) * lu(k,1369)
         lu(k,1407) = lu(k,1407) - lu(k,711) * lu(k,1369)
         lu(k,1719) = lu(k,1719) - lu(k,709) * lu(k,1669)
         lu(k,1722) = lu(k,1722) - lu(k,710) * lu(k,1669)
         lu(k,1728) = lu(k,1728) - lu(k,711) * lu(k,1669)
         lu(k,712) = 1._r8 / lu(k,712)
         lu(k,713) = lu(k,713) * lu(k,712)
         lu(k,714) = lu(k,714) * lu(k,712)
         lu(k,715) = lu(k,715) * lu(k,712)
         lu(k,791) = lu(k,791) - lu(k,713) * lu(k,780)
         lu(k,795) = lu(k,795) - lu(k,714) * lu(k,780)
         lu(k,796) = - lu(k,715) * lu(k,780)
         lu(k,831) = lu(k,831) - lu(k,713) * lu(k,818)
         lu(k,835) = lu(k,835) - lu(k,714) * lu(k,818)
         lu(k,836) = - lu(k,715) * lu(k,818)
         lu(k,869) = lu(k,869) - lu(k,713) * lu(k,856)
         lu(k,873) = lu(k,873) - lu(k,714) * lu(k,856)
         lu(k,874) = - lu(k,715) * lu(k,856)
         lu(k,952) = lu(k,952) - lu(k,713) * lu(k,940)
         lu(k,957) = lu(k,957) - lu(k,714) * lu(k,940)
         lu(k,958) = lu(k,958) - lu(k,715) * lu(k,940)
         lu(k,1145) = lu(k,1145) - lu(k,713) * lu(k,1138)
         lu(k,1149) = lu(k,1149) - lu(k,714) * lu(k,1138)
         lu(k,1150) = lu(k,1150) - lu(k,715) * lu(k,1138)
         lu(k,1257) = lu(k,1257) - lu(k,713) * lu(k,1244)
         lu(k,1264) = lu(k,1264) - lu(k,714) * lu(k,1244)
         lu(k,1265) = - lu(k,715) * lu(k,1244)
         lu(k,1510) = lu(k,1510) - lu(k,713) * lu(k,1472)
         lu(k,1519) = lu(k,1519) - lu(k,714) * lu(k,1472)
         lu(k,1521) = - lu(k,715) * lu(k,1472)
         lu(k,1545) = lu(k,1545) - lu(k,713) * lu(k,1528)
         lu(k,1554) = lu(k,1554) - lu(k,714) * lu(k,1528)
         lu(k,1556) = lu(k,1556) - lu(k,715) * lu(k,1528)
         lu(k,1719) = lu(k,1719) - lu(k,713) * lu(k,1670)
         lu(k,1728) = lu(k,1728) - lu(k,714) * lu(k,1670)
         lu(k,1730) = lu(k,1730) - lu(k,715) * lu(k,1670)
         lu(k,1781) = lu(k,1781) - lu(k,713) * lu(k,1746)
         lu(k,1790) = lu(k,1790) - lu(k,714) * lu(k,1746)
         lu(k,1792) = lu(k,1792) - lu(k,715) * lu(k,1746)
         lu(k,1846) = lu(k,1846) - lu(k,713) * lu(k,1835)
         lu(k,1855) = lu(k,1855) - lu(k,714) * lu(k,1835)
         lu(k,1857) = lu(k,1857) - lu(k,715) * lu(k,1835)
         lu(k,2106) = lu(k,2106) - lu(k,713) * lu(k,2067)
         lu(k,2115) = lu(k,2115) - lu(k,714) * lu(k,2067)
         lu(k,2117) = lu(k,2117) - lu(k,715) * lu(k,2067)
         lu(k,717) = 1._r8 / lu(k,717)
         lu(k,718) = lu(k,718) * lu(k,717)
         lu(k,719) = lu(k,719) * lu(k,717)
         lu(k,720) = lu(k,720) * lu(k,717)
         lu(k,721) = lu(k,721) * lu(k,717)
         lu(k,722) = lu(k,722) * lu(k,717)
         lu(k,723) = lu(k,723) * lu(k,717)
         lu(k,724) = lu(k,724) * lu(k,717)
         lu(k,725) = lu(k,725) * lu(k,717)
         lu(k,726) = lu(k,726) * lu(k,717)
         lu(k,944) = - lu(k,718) * lu(k,941)
         lu(k,946) = lu(k,946) - lu(k,719) * lu(k,941)
         lu(k,950) = - lu(k,720) * lu(k,941)
         lu(k,951) = - lu(k,721) * lu(k,941)
         lu(k,952) = lu(k,952) - lu(k,722) * lu(k,941)
         lu(k,954) = lu(k,954) - lu(k,723) * lu(k,941)
         lu(k,956) = - lu(k,724) * lu(k,941)
         lu(k,957) = lu(k,957) - lu(k,725) * lu(k,941)
         lu(k,958) = lu(k,958) - lu(k,726) * lu(k,941)
         lu(k,1487) = lu(k,1487) - lu(k,718) * lu(k,1473)
         lu(k,1493) = lu(k,1493) - lu(k,719) * lu(k,1473)
         lu(k,1506) = lu(k,1506) - lu(k,720) * lu(k,1473)
         lu(k,1507) = lu(k,1507) - lu(k,721) * lu(k,1473)
         lu(k,1510) = lu(k,1510) - lu(k,722) * lu(k,1473)
         lu(k,1513) = lu(k,1513) - lu(k,723) * lu(k,1473)
         lu(k,1517) = lu(k,1517) - lu(k,724) * lu(k,1473)
         lu(k,1519) = lu(k,1519) - lu(k,725) * lu(k,1473)
         lu(k,1521) = lu(k,1521) - lu(k,726) * lu(k,1473)
         lu(k,1693) = lu(k,1693) - lu(k,718) * lu(k,1671)
         lu(k,1699) = lu(k,1699) - lu(k,719) * lu(k,1671)
         lu(k,1715) = lu(k,1715) - lu(k,720) * lu(k,1671)
         lu(k,1716) = lu(k,1716) - lu(k,721) * lu(k,1671)
         lu(k,1719) = lu(k,1719) - lu(k,722) * lu(k,1671)
         lu(k,1722) = lu(k,1722) - lu(k,723) * lu(k,1671)
         lu(k,1726) = lu(k,1726) - lu(k,724) * lu(k,1671)
         lu(k,1728) = lu(k,1728) - lu(k,725) * lu(k,1671)
         lu(k,1730) = lu(k,1730) - lu(k,726) * lu(k,1671)
         lu(k,2081) = lu(k,2081) - lu(k,718) * lu(k,2068)
         lu(k,2087) = lu(k,2087) - lu(k,719) * lu(k,2068)
         lu(k,2102) = lu(k,2102) - lu(k,720) * lu(k,2068)
         lu(k,2103) = lu(k,2103) - lu(k,721) * lu(k,2068)
         lu(k,2106) = lu(k,2106) - lu(k,722) * lu(k,2068)
         lu(k,2109) = lu(k,2109) - lu(k,723) * lu(k,2068)
         lu(k,2113) = lu(k,2113) - lu(k,724) * lu(k,2068)
         lu(k,2115) = lu(k,2115) - lu(k,725) * lu(k,2068)
         lu(k,2117) = lu(k,2117) - lu(k,726) * lu(k,2068)
         lu(k,728) = 1._r8 / lu(k,728)
         lu(k,729) = lu(k,729) * lu(k,728)
         lu(k,730) = lu(k,730) * lu(k,728)
         lu(k,731) = lu(k,731) * lu(k,728)
         lu(k,732) = lu(k,732) * lu(k,728)
         lu(k,733) = lu(k,733) * lu(k,728)
         lu(k,734) = lu(k,734) * lu(k,728)
         lu(k,735) = lu(k,735) * lu(k,728)
         lu(k,736) = lu(k,736) * lu(k,728)
         lu(k,737) = lu(k,737) * lu(k,728)
         lu(k,738) = lu(k,738) * lu(k,728)
         lu(k,1374) = lu(k,1374) - lu(k,729) * lu(k,1370)
         lu(k,1385) = lu(k,1385) - lu(k,730) * lu(k,1370)
         lu(k,1396) = lu(k,1396) - lu(k,731) * lu(k,1370)
         lu(k,1397) = lu(k,1397) - lu(k,732) * lu(k,1370)
         lu(k,1398) = lu(k,1398) - lu(k,733) * lu(k,1370)
         lu(k,1400) = lu(k,1400) - lu(k,734) * lu(k,1370)
         lu(k,1402) = lu(k,1402) - lu(k,735) * lu(k,1370)
         lu(k,1406) = lu(k,1406) - lu(k,736) * lu(k,1370)
         lu(k,1407) = lu(k,1407) - lu(k,737) * lu(k,1370)
         lu(k,1409) = lu(k,1409) - lu(k,738) * lu(k,1370)
         lu(k,1481) = lu(k,1481) - lu(k,729) * lu(k,1474)
         lu(k,1493) = lu(k,1493) - lu(k,730) * lu(k,1474)
         lu(k,1505) = lu(k,1505) - lu(k,731) * lu(k,1474)
         lu(k,1506) = lu(k,1506) - lu(k,732) * lu(k,1474)
         lu(k,1507) = lu(k,1507) - lu(k,733) * lu(k,1474)
         lu(k,1510) = lu(k,1510) - lu(k,734) * lu(k,1474)
         lu(k,1513) = lu(k,1513) - lu(k,735) * lu(k,1474)
         lu(k,1517) = lu(k,1517) - lu(k,736) * lu(k,1474)
         lu(k,1519) = lu(k,1519) - lu(k,737) * lu(k,1474)
         lu(k,1521) = lu(k,1521) - lu(k,738) * lu(k,1474)
         lu(k,1685) = lu(k,1685) - lu(k,729) * lu(k,1672)
         lu(k,1699) = lu(k,1699) - lu(k,730) * lu(k,1672)
         lu(k,1714) = lu(k,1714) - lu(k,731) * lu(k,1672)
         lu(k,1715) = lu(k,1715) - lu(k,732) * lu(k,1672)
         lu(k,1716) = lu(k,1716) - lu(k,733) * lu(k,1672)
         lu(k,1719) = lu(k,1719) - lu(k,734) * lu(k,1672)
         lu(k,1722) = lu(k,1722) - lu(k,735) * lu(k,1672)
         lu(k,1726) = lu(k,1726) - lu(k,736) * lu(k,1672)
         lu(k,1728) = lu(k,1728) - lu(k,737) * lu(k,1672)
         lu(k,1730) = lu(k,1730) - lu(k,738) * lu(k,1672)
         lu(k,2077) = lu(k,2077) - lu(k,729) * lu(k,2069)
         lu(k,2087) = lu(k,2087) - lu(k,730) * lu(k,2069)
         lu(k,2101) = lu(k,2101) - lu(k,731) * lu(k,2069)
         lu(k,2102) = lu(k,2102) - lu(k,732) * lu(k,2069)
         lu(k,2103) = lu(k,2103) - lu(k,733) * lu(k,2069)
         lu(k,2106) = lu(k,2106) - lu(k,734) * lu(k,2069)
         lu(k,2109) = lu(k,2109) - lu(k,735) * lu(k,2069)
         lu(k,2113) = lu(k,2113) - lu(k,736) * lu(k,2069)
         lu(k,2115) = lu(k,2115) - lu(k,737) * lu(k,2069)
         lu(k,2117) = lu(k,2117) - lu(k,738) * lu(k,2069)
         lu(k,744) = 1._r8 / lu(k,744)
         lu(k,745) = lu(k,745) * lu(k,744)
         lu(k,746) = lu(k,746) * lu(k,744)
         lu(k,747) = lu(k,747) * lu(k,744)
         lu(k,748) = lu(k,748) * lu(k,744)
         lu(k,749) = lu(k,749) * lu(k,744)
         lu(k,750) = lu(k,750) * lu(k,744)
         lu(k,751) = lu(k,751) * lu(k,744)
         lu(k,752) = lu(k,752) * lu(k,744)
         lu(k,1424) = lu(k,1424) - lu(k,745) * lu(k,1421)
         lu(k,1427) = lu(k,1427) - lu(k,746) * lu(k,1421)
         lu(k,1428) = lu(k,1428) - lu(k,747) * lu(k,1421)
         lu(k,1430) = lu(k,1430) - lu(k,748) * lu(k,1421)
         lu(k,1431) = lu(k,1431) - lu(k,749) * lu(k,1421)
         lu(k,1433) = lu(k,1433) - lu(k,750) * lu(k,1421)
         lu(k,1435) = lu(k,1435) - lu(k,751) * lu(k,1421)
         lu(k,1436) = - lu(k,752) * lu(k,1421)
         lu(k,1488) = lu(k,1488) - lu(k,745) * lu(k,1475)
         lu(k,1506) = lu(k,1506) - lu(k,746) * lu(k,1475)
         lu(k,1507) = lu(k,1507) - lu(k,747) * lu(k,1475)
         lu(k,1509) = lu(k,1509) - lu(k,748) * lu(k,1475)
         lu(k,1510) = lu(k,1510) - lu(k,749) * lu(k,1475)
         lu(k,1512) = lu(k,1512) - lu(k,750) * lu(k,1475)
         lu(k,1515) = - lu(k,751) * lu(k,1475)
         lu(k,1517) = lu(k,1517) - lu(k,752) * lu(k,1475)
         lu(k,1694) = lu(k,1694) - lu(k,745) * lu(k,1673)
         lu(k,1715) = lu(k,1715) - lu(k,746) * lu(k,1673)
         lu(k,1716) = lu(k,1716) - lu(k,747) * lu(k,1673)
         lu(k,1718) = lu(k,1718) - lu(k,748) * lu(k,1673)
         lu(k,1719) = lu(k,1719) - lu(k,749) * lu(k,1673)
         lu(k,1721) = lu(k,1721) - lu(k,750) * lu(k,1673)
         lu(k,1724) = lu(k,1724) - lu(k,751) * lu(k,1673)
         lu(k,1726) = lu(k,1726) - lu(k,752) * lu(k,1673)
         lu(k,1812) = lu(k,1812) - lu(k,745) * lu(k,1807)
         lu(k,1818) = lu(k,1818) - lu(k,746) * lu(k,1807)
         lu(k,1819) = lu(k,1819) - lu(k,747) * lu(k,1807)
         lu(k,1821) = lu(k,1821) - lu(k,748) * lu(k,1807)
         lu(k,1822) = lu(k,1822) - lu(k,749) * lu(k,1807)
         lu(k,1824) = lu(k,1824) - lu(k,750) * lu(k,1807)
         lu(k,1827) = lu(k,1827) - lu(k,751) * lu(k,1807)
         lu(k,1829) = lu(k,1829) - lu(k,752) * lu(k,1807)
         lu(k,1975) = lu(k,1975) - lu(k,745) * lu(k,1969)
         lu(k,1983) = lu(k,1983) - lu(k,746) * lu(k,1969)
         lu(k,1984) = lu(k,1984) - lu(k,747) * lu(k,1969)
         lu(k,1986) = - lu(k,748) * lu(k,1969)
         lu(k,1987) = lu(k,1987) - lu(k,749) * lu(k,1969)
         lu(k,1989) = lu(k,1989) - lu(k,750) * lu(k,1969)
         lu(k,1992) = - lu(k,751) * lu(k,1969)
         lu(k,1994) = lu(k,1994) - lu(k,752) * lu(k,1969)
      end do
      end subroutine lu_fac16
      subroutine lu_fac17( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,753) = 1._r8 / lu(k,753)
         lu(k,754) = lu(k,754) * lu(k,753)
         lu(k,755) = lu(k,755) * lu(k,753)
         lu(k,756) = lu(k,756) * lu(k,753)
         lu(k,757) = lu(k,757) * lu(k,753)
         lu(k,758) = lu(k,758) * lu(k,753)
         lu(k,759) = lu(k,759) * lu(k,753)
         lu(k,760) = lu(k,760) * lu(k,753)
         lu(k,1352) = lu(k,1352) - lu(k,754) * lu(k,1350)
         lu(k,1354) = - lu(k,755) * lu(k,1350)
         lu(k,1355) = - lu(k,756) * lu(k,1350)
         lu(k,1357) = - lu(k,757) * lu(k,1350)
         lu(k,1359) = - lu(k,758) * lu(k,1350)
         lu(k,1360) = lu(k,1360) - lu(k,759) * lu(k,1350)
         lu(k,1362) = - lu(k,760) * lu(k,1350)
         lu(k,1565) = lu(k,1565) - lu(k,754) * lu(k,1562)
         lu(k,1570) = lu(k,1570) - lu(k,755) * lu(k,1562)
         lu(k,1571) = lu(k,1571) - lu(k,756) * lu(k,1562)
         lu(k,1573) = lu(k,1573) - lu(k,757) * lu(k,1562)
         lu(k,1576) = lu(k,1576) - lu(k,758) * lu(k,1562)
         lu(k,1579) = lu(k,1579) - lu(k,759) * lu(k,1562)
         lu(k,1582) = lu(k,1582) - lu(k,760) * lu(k,1562)
         lu(k,1713) = lu(k,1713) - lu(k,754) * lu(k,1674)
         lu(k,1718) = lu(k,1718) - lu(k,755) * lu(k,1674)
         lu(k,1719) = lu(k,1719) - lu(k,756) * lu(k,1674)
         lu(k,1721) = lu(k,1721) - lu(k,757) * lu(k,1674)
         lu(k,1724) = lu(k,1724) - lu(k,758) * lu(k,1674)
         lu(k,1727) = lu(k,1727) - lu(k,759) * lu(k,1674)
         lu(k,1730) = lu(k,1730) - lu(k,760) * lu(k,1674)
         lu(k,1816) = lu(k,1816) - lu(k,754) * lu(k,1808)
         lu(k,1821) = lu(k,1821) - lu(k,755) * lu(k,1808)
         lu(k,1822) = lu(k,1822) - lu(k,756) * lu(k,1808)
         lu(k,1824) = lu(k,1824) - lu(k,757) * lu(k,1808)
         lu(k,1827) = lu(k,1827) - lu(k,758) * lu(k,1808)
         lu(k,1830) = lu(k,1830) - lu(k,759) * lu(k,1808)
         lu(k,1833) = lu(k,1833) - lu(k,760) * lu(k,1808)
         lu(k,1840) = lu(k,1840) - lu(k,754) * lu(k,1836)
         lu(k,1845) = - lu(k,755) * lu(k,1836)
         lu(k,1846) = lu(k,1846) - lu(k,756) * lu(k,1836)
         lu(k,1848) = lu(k,1848) - lu(k,757) * lu(k,1836)
         lu(k,1851) = lu(k,1851) - lu(k,758) * lu(k,1836)
         lu(k,1854) = - lu(k,759) * lu(k,1836)
         lu(k,1857) = lu(k,1857) - lu(k,760) * lu(k,1836)
         lu(k,2100) = lu(k,2100) - lu(k,754) * lu(k,2070)
         lu(k,2105) = - lu(k,755) * lu(k,2070)
         lu(k,2106) = lu(k,2106) - lu(k,756) * lu(k,2070)
         lu(k,2108) = lu(k,2108) - lu(k,757) * lu(k,2070)
         lu(k,2111) = lu(k,2111) - lu(k,758) * lu(k,2070)
         lu(k,2114) = lu(k,2114) - lu(k,759) * lu(k,2070)
         lu(k,2117) = lu(k,2117) - lu(k,760) * lu(k,2070)
         lu(k,762) = 1._r8 / lu(k,762)
         lu(k,763) = lu(k,763) * lu(k,762)
         lu(k,764) = lu(k,764) * lu(k,762)
         lu(k,765) = lu(k,765) * lu(k,762)
         lu(k,766) = lu(k,766) * lu(k,762)
         lu(k,767) = lu(k,767) * lu(k,762)
         lu(k,768) = lu(k,768) * lu(k,762)
         lu(k,907) = lu(k,907) - lu(k,763) * lu(k,905)
         lu(k,908) = lu(k,908) - lu(k,764) * lu(k,905)
         lu(k,909) = lu(k,909) - lu(k,765) * lu(k,905)
         lu(k,910) = lu(k,910) - lu(k,766) * lu(k,905)
         lu(k,914) = lu(k,914) - lu(k,767) * lu(k,905)
         lu(k,915) = - lu(k,768) * lu(k,905)
         lu(k,1337) = lu(k,1337) - lu(k,763) * lu(k,1335)
         lu(k,1339) = lu(k,1339) - lu(k,764) * lu(k,1335)
         lu(k,1341) = lu(k,1341) - lu(k,765) * lu(k,1335)
         lu(k,1342) = lu(k,1342) - lu(k,766) * lu(k,1335)
         lu(k,1348) = lu(k,1348) - lu(k,767) * lu(k,1335)
         lu(k,1349) = lu(k,1349) - lu(k,768) * lu(k,1335)
         lu(k,1538) = lu(k,1538) - lu(k,763) * lu(k,1529)
         lu(k,1543) = lu(k,1543) - lu(k,764) * lu(k,1529)
         lu(k,1545) = lu(k,1545) - lu(k,765) * lu(k,1529)
         lu(k,1547) = lu(k,1547) - lu(k,766) * lu(k,1529)
         lu(k,1555) = lu(k,1555) - lu(k,767) * lu(k,1529)
         lu(k,1556) = lu(k,1556) - lu(k,768) * lu(k,1529)
         lu(k,1712) = lu(k,1712) - lu(k,763) * lu(k,1675)
         lu(k,1717) = lu(k,1717) - lu(k,764) * lu(k,1675)
         lu(k,1719) = lu(k,1719) - lu(k,765) * lu(k,1675)
         lu(k,1721) = lu(k,1721) - lu(k,766) * lu(k,1675)
         lu(k,1729) = lu(k,1729) - lu(k,767) * lu(k,1675)
         lu(k,1730) = lu(k,1730) - lu(k,768) * lu(k,1675)
         lu(k,1815) = lu(k,1815) - lu(k,763) * lu(k,1809)
         lu(k,1820) = lu(k,1820) - lu(k,764) * lu(k,1809)
         lu(k,1822) = lu(k,1822) - lu(k,765) * lu(k,1809)
         lu(k,1824) = lu(k,1824) - lu(k,766) * lu(k,1809)
         lu(k,1832) = lu(k,1832) - lu(k,767) * lu(k,1809)
         lu(k,1833) = lu(k,1833) - lu(k,768) * lu(k,1809)
         lu(k,2099) = lu(k,2099) - lu(k,763) * lu(k,2071)
         lu(k,2104) = lu(k,2104) - lu(k,764) * lu(k,2071)
         lu(k,2106) = lu(k,2106) - lu(k,765) * lu(k,2071)
         lu(k,2108) = lu(k,2108) - lu(k,766) * lu(k,2071)
         lu(k,2116) = lu(k,2116) - lu(k,767) * lu(k,2071)
         lu(k,2117) = lu(k,2117) - lu(k,768) * lu(k,2071)
         lu(k,2126) = lu(k,2126) - lu(k,763) * lu(k,2122)
         lu(k,2131) = lu(k,2131) - lu(k,764) * lu(k,2122)
         lu(k,2133) = lu(k,2133) - lu(k,765) * lu(k,2122)
         lu(k,2135) = lu(k,2135) - lu(k,766) * lu(k,2122)
         lu(k,2143) = lu(k,2143) - lu(k,767) * lu(k,2122)
         lu(k,2144) = - lu(k,768) * lu(k,2122)
         lu(k,769) = 1._r8 / lu(k,769)
         lu(k,770) = lu(k,770) * lu(k,769)
         lu(k,771) = lu(k,771) * lu(k,769)
         lu(k,772) = lu(k,772) * lu(k,769)
         lu(k,773) = lu(k,773) * lu(k,769)
         lu(k,774) = lu(k,774) * lu(k,769)
         lu(k,930) = - lu(k,770) * lu(k,925)
         lu(k,931) = - lu(k,771) * lu(k,925)
         lu(k,934) = lu(k,934) - lu(k,772) * lu(k,925)
         lu(k,935) = - lu(k,773) * lu(k,925)
         lu(k,937) = lu(k,937) - lu(k,774) * lu(k,925)
         lu(k,947) = - lu(k,770) * lu(k,942)
         lu(k,948) = - lu(k,771) * lu(k,942)
         lu(k,952) = lu(k,952) - lu(k,772) * lu(k,942)
         lu(k,954) = lu(k,954) - lu(k,773) * lu(k,942)
         lu(k,956) = lu(k,956) - lu(k,774) * lu(k,942)
         lu(k,1126) = - lu(k,770) * lu(k,1119)
         lu(k,1128) = lu(k,1128) - lu(k,771) * lu(k,1119)
         lu(k,1131) = lu(k,1131) - lu(k,772) * lu(k,1119)
         lu(k,1132) = lu(k,1132) - lu(k,773) * lu(k,1119)
         lu(k,1136) = lu(k,1136) - lu(k,774) * lu(k,1119)
         lu(k,1205) = lu(k,1205) - lu(k,770) * lu(k,1194)
         lu(k,1210) = lu(k,1210) - lu(k,771) * lu(k,1194)
         lu(k,1213) = lu(k,1213) - lu(k,772) * lu(k,1194)
         lu(k,1215) = lu(k,1215) - lu(k,773) * lu(k,1194)
         lu(k,1219) = lu(k,1219) - lu(k,774) * lu(k,1194)
         lu(k,1389) = lu(k,1389) - lu(k,770) * lu(k,1371)
         lu(k,1395) = lu(k,1395) - lu(k,771) * lu(k,1371)
         lu(k,1400) = lu(k,1400) - lu(k,772) * lu(k,1371)
         lu(k,1402) = lu(k,1402) - lu(k,773) * lu(k,1371)
         lu(k,1406) = lu(k,1406) - lu(k,774) * lu(k,1371)
         lu(k,1497) = lu(k,1497) - lu(k,770) * lu(k,1476)
         lu(k,1503) = lu(k,1503) - lu(k,771) * lu(k,1476)
         lu(k,1510) = lu(k,1510) - lu(k,772) * lu(k,1476)
         lu(k,1513) = lu(k,1513) - lu(k,773) * lu(k,1476)
         lu(k,1517) = lu(k,1517) - lu(k,774) * lu(k,1476)
         lu(k,1704) = lu(k,1704) - lu(k,770) * lu(k,1676)
         lu(k,1710) = lu(k,1710) - lu(k,771) * lu(k,1676)
         lu(k,1719) = lu(k,1719) - lu(k,772) * lu(k,1676)
         lu(k,1722) = lu(k,1722) - lu(k,773) * lu(k,1676)
         lu(k,1726) = lu(k,1726) - lu(k,774) * lu(k,1676)
         lu(k,1889) = lu(k,1889) - lu(k,770) * lu(k,1865)
         lu(k,1895) = lu(k,1895) - lu(k,771) * lu(k,1865)
         lu(k,1903) = lu(k,1903) - lu(k,772) * lu(k,1865)
         lu(k,1906) = lu(k,1906) - lu(k,773) * lu(k,1865)
         lu(k,1910) = lu(k,1910) - lu(k,774) * lu(k,1865)
         lu(k,2092) = lu(k,2092) - lu(k,770) * lu(k,2072)
         lu(k,2098) = lu(k,2098) - lu(k,771) * lu(k,2072)
         lu(k,2106) = lu(k,2106) - lu(k,772) * lu(k,2072)
         lu(k,2109) = lu(k,2109) - lu(k,773) * lu(k,2072)
         lu(k,2113) = lu(k,2113) - lu(k,774) * lu(k,2072)
         lu(k,781) = 1._r8 / lu(k,781)
         lu(k,782) = lu(k,782) * lu(k,781)
         lu(k,783) = lu(k,783) * lu(k,781)
         lu(k,784) = lu(k,784) * lu(k,781)
         lu(k,785) = lu(k,785) * lu(k,781)
         lu(k,786) = lu(k,786) * lu(k,781)
         lu(k,787) = lu(k,787) * lu(k,781)
         lu(k,788) = lu(k,788) * lu(k,781)
         lu(k,789) = lu(k,789) * lu(k,781)
         lu(k,790) = lu(k,790) * lu(k,781)
         lu(k,791) = lu(k,791) * lu(k,781)
         lu(k,792) = lu(k,792) * lu(k,781)
         lu(k,793) = lu(k,793) * lu(k,781)
         lu(k,794) = lu(k,794) * lu(k,781)
         lu(k,795) = lu(k,795) * lu(k,781)
         lu(k,796) = lu(k,796) * lu(k,781)
         lu(k,1689) = lu(k,1689) - lu(k,782) * lu(k,1677)
         lu(k,1694) = lu(k,1694) - lu(k,783) * lu(k,1677)
         lu(k,1702) = - lu(k,784) * lu(k,1677)
         lu(k,1703) = lu(k,1703) - lu(k,785) * lu(k,1677)
         lu(k,1705) = lu(k,1705) - lu(k,786) * lu(k,1677)
         lu(k,1706) = lu(k,1706) - lu(k,787) * lu(k,1677)
         lu(k,1708) = lu(k,1708) - lu(k,788) * lu(k,1677)
         lu(k,1710) = lu(k,1710) - lu(k,789) * lu(k,1677)
         lu(k,1714) = lu(k,1714) - lu(k,790) * lu(k,1677)
         lu(k,1719) = lu(k,1719) - lu(k,791) * lu(k,1677)
         lu(k,1720) = lu(k,1720) - lu(k,792) * lu(k,1677)
         lu(k,1722) = lu(k,1722) - lu(k,793) * lu(k,1677)
         lu(k,1723) = lu(k,1723) - lu(k,794) * lu(k,1677)
         lu(k,1728) = lu(k,1728) - lu(k,795) * lu(k,1677)
         lu(k,1730) = lu(k,1730) - lu(k,796) * lu(k,1677)
         lu(k,1755) = lu(k,1755) - lu(k,782) * lu(k,1747)
         lu(k,1759) = lu(k,1759) - lu(k,783) * lu(k,1747)
         lu(k,1765) = - lu(k,784) * lu(k,1747)
         lu(k,1766) = lu(k,1766) - lu(k,785) * lu(k,1747)
         lu(k,1768) = - lu(k,786) * lu(k,1747)
         lu(k,1769) = - lu(k,787) * lu(k,1747)
         lu(k,1771) = lu(k,1771) - lu(k,788) * lu(k,1747)
         lu(k,1773) = lu(k,1773) - lu(k,789) * lu(k,1747)
         lu(k,1776) = lu(k,1776) - lu(k,790) * lu(k,1747)
         lu(k,1781) = lu(k,1781) - lu(k,791) * lu(k,1747)
         lu(k,1782) = lu(k,1782) - lu(k,792) * lu(k,1747)
         lu(k,1784) = lu(k,1784) - lu(k,793) * lu(k,1747)
         lu(k,1785) = lu(k,1785) - lu(k,794) * lu(k,1747)
         lu(k,1790) = lu(k,1790) - lu(k,795) * lu(k,1747)
         lu(k,1792) = lu(k,1792) - lu(k,796) * lu(k,1747)
         lu(k,1875) = lu(k,1875) - lu(k,782) * lu(k,1866)
         lu(k,1880) = lu(k,1880) - lu(k,783) * lu(k,1866)
         lu(k,1887) = lu(k,1887) - lu(k,784) * lu(k,1866)
         lu(k,1888) = lu(k,1888) - lu(k,785) * lu(k,1866)
         lu(k,1890) = lu(k,1890) - lu(k,786) * lu(k,1866)
         lu(k,1891) = lu(k,1891) - lu(k,787) * lu(k,1866)
         lu(k,1893) = lu(k,1893) - lu(k,788) * lu(k,1866)
         lu(k,1895) = lu(k,1895) - lu(k,789) * lu(k,1866)
         lu(k,1898) = - lu(k,790) * lu(k,1866)
         lu(k,1903) = lu(k,1903) - lu(k,791) * lu(k,1866)
         lu(k,1904) = - lu(k,792) * lu(k,1866)
         lu(k,1906) = lu(k,1906) - lu(k,793) * lu(k,1866)
         lu(k,1907) = lu(k,1907) - lu(k,794) * lu(k,1866)
         lu(k,1912) = lu(k,1912) - lu(k,795) * lu(k,1866)
         lu(k,1914) = - lu(k,796) * lu(k,1866)
      end do
      end subroutine lu_fac17
      subroutine lu_fac18( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,798) = 1._r8 / lu(k,798)
         lu(k,799) = lu(k,799) * lu(k,798)
         lu(k,800) = lu(k,800) * lu(k,798)
         lu(k,801) = lu(k,801) * lu(k,798)
         lu(k,804) = lu(k,804) - lu(k,799) * lu(k,802)
         lu(k,808) = lu(k,808) - lu(k,800) * lu(k,802)
         lu(k,810) = lu(k,810) - lu(k,801) * lu(k,802)
         lu(k,825) = lu(k,825) - lu(k,799) * lu(k,819)
         lu(k,831) = lu(k,831) - lu(k,800) * lu(k,819)
         lu(k,835) = lu(k,835) - lu(k,801) * lu(k,819)
         lu(k,863) = lu(k,863) - lu(k,799) * lu(k,857)
         lu(k,869) = lu(k,869) - lu(k,800) * lu(k,857)
         lu(k,873) = lu(k,873) - lu(k,801) * lu(k,857)
         lu(k,929) = lu(k,929) - lu(k,799) * lu(k,926)
         lu(k,934) = lu(k,934) - lu(k,800) * lu(k,926)
         lu(k,938) = lu(k,938) - lu(k,801) * lu(k,926)
         lu(k,961) = lu(k,961) - lu(k,799) * lu(k,959)
         lu(k,962) = lu(k,962) - lu(k,800) * lu(k,959)
         lu(k,964) = lu(k,964) - lu(k,801) * lu(k,959)
         lu(k,1090) = lu(k,1090) - lu(k,799) * lu(k,1087)
         lu(k,1096) = lu(k,1096) - lu(k,800) * lu(k,1087)
         lu(k,1101) = lu(k,1101) - lu(k,801) * lu(k,1087)
         lu(k,1200) = lu(k,1200) - lu(k,799) * lu(k,1195)
         lu(k,1213) = lu(k,1213) - lu(k,800) * lu(k,1195)
         lu(k,1220) = lu(k,1220) - lu(k,801) * lu(k,1195)
         lu(k,1292) = lu(k,1292) - lu(k,799) * lu(k,1288)
         lu(k,1306) = lu(k,1306) - lu(k,800) * lu(k,1288)
         lu(k,1313) = lu(k,1313) - lu(k,801) * lu(k,1288)
         lu(k,1380) = lu(k,1380) - lu(k,799) * lu(k,1372)
         lu(k,1400) = lu(k,1400) - lu(k,800) * lu(k,1372)
         lu(k,1407) = lu(k,1407) - lu(k,801) * lu(k,1372)
         lu(k,1488) = lu(k,1488) - lu(k,799) * lu(k,1477)
         lu(k,1510) = lu(k,1510) - lu(k,800) * lu(k,1477)
         lu(k,1519) = lu(k,1519) - lu(k,801) * lu(k,1477)
         lu(k,1534) = lu(k,1534) - lu(k,799) * lu(k,1530)
         lu(k,1545) = lu(k,1545) - lu(k,800) * lu(k,1530)
         lu(k,1554) = lu(k,1554) - lu(k,801) * lu(k,1530)
         lu(k,1694) = lu(k,1694) - lu(k,799) * lu(k,1678)
         lu(k,1719) = lu(k,1719) - lu(k,800) * lu(k,1678)
         lu(k,1728) = lu(k,1728) - lu(k,801) * lu(k,1678)
         lu(k,1759) = lu(k,1759) - lu(k,799) * lu(k,1748)
         lu(k,1781) = lu(k,1781) - lu(k,800) * lu(k,1748)
         lu(k,1790) = lu(k,1790) - lu(k,801) * lu(k,1748)
         lu(k,1880) = lu(k,1880) - lu(k,799) * lu(k,1867)
         lu(k,1903) = lu(k,1903) - lu(k,800) * lu(k,1867)
         lu(k,1912) = lu(k,1912) - lu(k,801) * lu(k,1867)
         lu(k,1975) = lu(k,1975) - lu(k,799) * lu(k,1970)
         lu(k,1987) = lu(k,1987) - lu(k,800) * lu(k,1970)
         lu(k,1996) = lu(k,1996) - lu(k,801) * lu(k,1970)
         lu(k,2082) = lu(k,2082) - lu(k,799) * lu(k,2073)
         lu(k,2106) = lu(k,2106) - lu(k,800) * lu(k,2073)
         lu(k,2115) = lu(k,2115) - lu(k,801) * lu(k,2073)
         lu(k,803) = 1._r8 / lu(k,803)
         lu(k,804) = lu(k,804) * lu(k,803)
         lu(k,805) = lu(k,805) * lu(k,803)
         lu(k,806) = lu(k,806) * lu(k,803)
         lu(k,807) = lu(k,807) * lu(k,803)
         lu(k,808) = lu(k,808) * lu(k,803)
         lu(k,809) = lu(k,809) * lu(k,803)
         lu(k,810) = lu(k,810) * lu(k,803)
         lu(k,929) = lu(k,929) - lu(k,804) * lu(k,927)
         lu(k,930) = lu(k,930) - lu(k,805) * lu(k,927)
         lu(k,932) = - lu(k,806) * lu(k,927)
         lu(k,933) = - lu(k,807) * lu(k,927)
         lu(k,934) = lu(k,934) - lu(k,808) * lu(k,927)
         lu(k,937) = lu(k,937) - lu(k,809) * lu(k,927)
         lu(k,938) = lu(k,938) - lu(k,810) * lu(k,927)
         lu(k,1200) = lu(k,1200) - lu(k,804) * lu(k,1196)
         lu(k,1205) = lu(k,1205) - lu(k,805) * lu(k,1196)
         lu(k,1211) = lu(k,1211) - lu(k,806) * lu(k,1196)
         lu(k,1212) = lu(k,1212) - lu(k,807) * lu(k,1196)
         lu(k,1213) = lu(k,1213) - lu(k,808) * lu(k,1196)
         lu(k,1219) = lu(k,1219) - lu(k,809) * lu(k,1196)
         lu(k,1220) = lu(k,1220) - lu(k,810) * lu(k,1196)
         lu(k,1488) = lu(k,1488) - lu(k,804) * lu(k,1478)
         lu(k,1497) = lu(k,1497) - lu(k,805) * lu(k,1478)
         lu(k,1505) = lu(k,1505) - lu(k,806) * lu(k,1478)
         lu(k,1507) = lu(k,1507) - lu(k,807) * lu(k,1478)
         lu(k,1510) = lu(k,1510) - lu(k,808) * lu(k,1478)
         lu(k,1517) = lu(k,1517) - lu(k,809) * lu(k,1478)
         lu(k,1519) = lu(k,1519) - lu(k,810) * lu(k,1478)
         lu(k,1694) = lu(k,1694) - lu(k,804) * lu(k,1679)
         lu(k,1704) = lu(k,1704) - lu(k,805) * lu(k,1679)
         lu(k,1714) = lu(k,1714) - lu(k,806) * lu(k,1679)
         lu(k,1716) = lu(k,1716) - lu(k,807) * lu(k,1679)
         lu(k,1719) = lu(k,1719) - lu(k,808) * lu(k,1679)
         lu(k,1726) = lu(k,1726) - lu(k,809) * lu(k,1679)
         lu(k,1728) = lu(k,1728) - lu(k,810) * lu(k,1679)
         lu(k,1975) = lu(k,1975) - lu(k,804) * lu(k,1971)
         lu(k,1976) = lu(k,1976) - lu(k,805) * lu(k,1971)
         lu(k,1982) = lu(k,1982) - lu(k,806) * lu(k,1971)
         lu(k,1984) = lu(k,1984) - lu(k,807) * lu(k,1971)
         lu(k,1987) = lu(k,1987) - lu(k,808) * lu(k,1971)
         lu(k,1994) = lu(k,1994) - lu(k,809) * lu(k,1971)
         lu(k,1996) = lu(k,1996) - lu(k,810) * lu(k,1971)
         lu(k,2082) = lu(k,2082) - lu(k,804) * lu(k,2074)
         lu(k,2092) = lu(k,2092) - lu(k,805) * lu(k,2074)
         lu(k,2101) = lu(k,2101) - lu(k,806) * lu(k,2074)
         lu(k,2103) = lu(k,2103) - lu(k,807) * lu(k,2074)
         lu(k,2106) = lu(k,2106) - lu(k,808) * lu(k,2074)
         lu(k,2113) = lu(k,2113) - lu(k,809) * lu(k,2074)
         lu(k,2115) = lu(k,2115) - lu(k,810) * lu(k,2074)
         lu(k,820) = 1._r8 / lu(k,820)
         lu(k,821) = lu(k,821) * lu(k,820)
         lu(k,822) = lu(k,822) * lu(k,820)
         lu(k,823) = lu(k,823) * lu(k,820)
         lu(k,824) = lu(k,824) * lu(k,820)
         lu(k,825) = lu(k,825) * lu(k,820)
         lu(k,826) = lu(k,826) * lu(k,820)
         lu(k,827) = lu(k,827) * lu(k,820)
         lu(k,828) = lu(k,828) * lu(k,820)
         lu(k,829) = lu(k,829) * lu(k,820)
         lu(k,830) = lu(k,830) * lu(k,820)
         lu(k,831) = lu(k,831) * lu(k,820)
         lu(k,832) = lu(k,832) * lu(k,820)
         lu(k,833) = lu(k,833) * lu(k,820)
         lu(k,834) = lu(k,834) * lu(k,820)
         lu(k,835) = lu(k,835) * lu(k,820)
         lu(k,836) = lu(k,836) * lu(k,820)
         lu(k,1683) = lu(k,1683) - lu(k,821) * lu(k,1680)
         lu(k,1685) = lu(k,1685) - lu(k,822) * lu(k,1680)
         lu(k,1687) = lu(k,1687) - lu(k,823) * lu(k,1680)
         lu(k,1692) = lu(k,1692) - lu(k,824) * lu(k,1680)
         lu(k,1694) = lu(k,1694) - lu(k,825) * lu(k,1680)
         lu(k,1695) = lu(k,1695) - lu(k,826) * lu(k,1680)
         lu(k,1697) = lu(k,1697) - lu(k,827) * lu(k,1680)
         lu(k,1698) = lu(k,1698) - lu(k,828) * lu(k,1680)
         lu(k,1704) = lu(k,1704) - lu(k,829) * lu(k,1680)
         lu(k,1710) = lu(k,1710) - lu(k,830) * lu(k,1680)
         lu(k,1719) = lu(k,1719) - lu(k,831) * lu(k,1680)
         lu(k,1720) = lu(k,1720) - lu(k,832) * lu(k,1680)
         lu(k,1722) = lu(k,1722) - lu(k,833) * lu(k,1680)
         lu(k,1723) = lu(k,1723) - lu(k,834) * lu(k,1680)
         lu(k,1728) = lu(k,1728) - lu(k,835) * lu(k,1680)
         lu(k,1730) = lu(k,1730) - lu(k,836) * lu(k,1680)
         lu(k,1751) = lu(k,1751) - lu(k,821) * lu(k,1749)
         lu(k,1753) = lu(k,1753) - lu(k,822) * lu(k,1749)
         lu(k,1754) = lu(k,1754) - lu(k,823) * lu(k,1749)
         lu(k,1757) = lu(k,1757) - lu(k,824) * lu(k,1749)
         lu(k,1759) = lu(k,1759) - lu(k,825) * lu(k,1749)
         lu(k,1760) = - lu(k,826) * lu(k,1749)
         lu(k,1762) = - lu(k,827) * lu(k,1749)
         lu(k,1763) = lu(k,1763) - lu(k,828) * lu(k,1749)
         lu(k,1767) = lu(k,1767) - lu(k,829) * lu(k,1749)
         lu(k,1773) = lu(k,1773) - lu(k,830) * lu(k,1749)
         lu(k,1781) = lu(k,1781) - lu(k,831) * lu(k,1749)
         lu(k,1782) = lu(k,1782) - lu(k,832) * lu(k,1749)
         lu(k,1784) = lu(k,1784) - lu(k,833) * lu(k,1749)
         lu(k,1785) = lu(k,1785) - lu(k,834) * lu(k,1749)
         lu(k,1790) = lu(k,1790) - lu(k,835) * lu(k,1749)
         lu(k,1792) = lu(k,1792) - lu(k,836) * lu(k,1749)
         lu(k,1870) = - lu(k,821) * lu(k,1868)
         lu(k,1872) = lu(k,1872) - lu(k,822) * lu(k,1868)
         lu(k,1873) = lu(k,1873) - lu(k,823) * lu(k,1868)
         lu(k,1878) = - lu(k,824) * lu(k,1868)
         lu(k,1880) = lu(k,1880) - lu(k,825) * lu(k,1868)
         lu(k,1881) = - lu(k,826) * lu(k,1868)
         lu(k,1883) = lu(k,1883) - lu(k,827) * lu(k,1868)
         lu(k,1884) = - lu(k,828) * lu(k,1868)
         lu(k,1889) = lu(k,1889) - lu(k,829) * lu(k,1868)
         lu(k,1895) = lu(k,1895) - lu(k,830) * lu(k,1868)
         lu(k,1903) = lu(k,1903) - lu(k,831) * lu(k,1868)
         lu(k,1904) = lu(k,1904) - lu(k,832) * lu(k,1868)
         lu(k,1906) = lu(k,1906) - lu(k,833) * lu(k,1868)
         lu(k,1907) = lu(k,1907) - lu(k,834) * lu(k,1868)
         lu(k,1912) = lu(k,1912) - lu(k,835) * lu(k,1868)
         lu(k,1914) = lu(k,1914) - lu(k,836) * lu(k,1868)
         lu(k,840) = 1._r8 / lu(k,840)
         lu(k,841) = lu(k,841) * lu(k,840)
         lu(k,842) = lu(k,842) * lu(k,840)
         lu(k,843) = lu(k,843) * lu(k,840)
         lu(k,844) = lu(k,844) * lu(k,840)
         lu(k,845) = lu(k,845) * lu(k,840)
         lu(k,846) = lu(k,846) * lu(k,840)
         lu(k,847) = lu(k,847) * lu(k,840)
         lu(k,848) = lu(k,848) * lu(k,840)
         lu(k,882) = lu(k,882) - lu(k,841) * lu(k,879)
         lu(k,884) = - lu(k,842) * lu(k,879)
         lu(k,885) = - lu(k,843) * lu(k,879)
         lu(k,886) = lu(k,886) - lu(k,844) * lu(k,879)
         lu(k,887) = lu(k,887) - lu(k,845) * lu(k,879)
         lu(k,888) = lu(k,888) - lu(k,846) * lu(k,879)
         lu(k,889) = lu(k,889) - lu(k,847) * lu(k,879)
         lu(k,890) = lu(k,890) - lu(k,848) * lu(k,879)
         lu(k,1385) = lu(k,1385) - lu(k,841) * lu(k,1373)
         lu(k,1396) = lu(k,1396) - lu(k,842) * lu(k,1373)
         lu(k,1397) = lu(k,1397) - lu(k,843) * lu(k,1373)
         lu(k,1398) = lu(k,1398) - lu(k,844) * lu(k,1373)
         lu(k,1400) = lu(k,1400) - lu(k,845) * lu(k,1373)
         lu(k,1402) = lu(k,1402) - lu(k,846) * lu(k,1373)
         lu(k,1406) = lu(k,1406) - lu(k,847) * lu(k,1373)
         lu(k,1407) = lu(k,1407) - lu(k,848) * lu(k,1373)
         lu(k,1493) = lu(k,1493) - lu(k,841) * lu(k,1479)
         lu(k,1505) = lu(k,1505) - lu(k,842) * lu(k,1479)
         lu(k,1506) = lu(k,1506) - lu(k,843) * lu(k,1479)
         lu(k,1507) = lu(k,1507) - lu(k,844) * lu(k,1479)
         lu(k,1510) = lu(k,1510) - lu(k,845) * lu(k,1479)
         lu(k,1513) = lu(k,1513) - lu(k,846) * lu(k,1479)
         lu(k,1517) = lu(k,1517) - lu(k,847) * lu(k,1479)
         lu(k,1519) = lu(k,1519) - lu(k,848) * lu(k,1479)
         lu(k,1535) = - lu(k,841) * lu(k,1531)
         lu(k,1540) = lu(k,1540) - lu(k,842) * lu(k,1531)
         lu(k,1541) = lu(k,1541) - lu(k,843) * lu(k,1531)
         lu(k,1542) = lu(k,1542) - lu(k,844) * lu(k,1531)
         lu(k,1545) = lu(k,1545) - lu(k,845) * lu(k,1531)
         lu(k,1548) = lu(k,1548) - lu(k,846) * lu(k,1531)
         lu(k,1552) = lu(k,1552) - lu(k,847) * lu(k,1531)
         lu(k,1554) = lu(k,1554) - lu(k,848) * lu(k,1531)
         lu(k,1699) = lu(k,1699) - lu(k,841) * lu(k,1681)
         lu(k,1714) = lu(k,1714) - lu(k,842) * lu(k,1681)
         lu(k,1715) = lu(k,1715) - lu(k,843) * lu(k,1681)
         lu(k,1716) = lu(k,1716) - lu(k,844) * lu(k,1681)
         lu(k,1719) = lu(k,1719) - lu(k,845) * lu(k,1681)
         lu(k,1722) = lu(k,1722) - lu(k,846) * lu(k,1681)
         lu(k,1726) = lu(k,1726) - lu(k,847) * lu(k,1681)
         lu(k,1728) = lu(k,1728) - lu(k,848) * lu(k,1681)
         lu(k,2087) = lu(k,2087) - lu(k,841) * lu(k,2075)
         lu(k,2101) = lu(k,2101) - lu(k,842) * lu(k,2075)
         lu(k,2102) = lu(k,2102) - lu(k,843) * lu(k,2075)
         lu(k,2103) = lu(k,2103) - lu(k,844) * lu(k,2075)
         lu(k,2106) = lu(k,2106) - lu(k,845) * lu(k,2075)
         lu(k,2109) = lu(k,2109) - lu(k,846) * lu(k,2075)
         lu(k,2113) = lu(k,2113) - lu(k,847) * lu(k,2075)
         lu(k,2115) = lu(k,2115) - lu(k,848) * lu(k,2075)
         lu(k,858) = 1._r8 / lu(k,858)
         lu(k,859) = lu(k,859) * lu(k,858)
         lu(k,860) = lu(k,860) * lu(k,858)
         lu(k,861) = lu(k,861) * lu(k,858)
         lu(k,862) = lu(k,862) * lu(k,858)
         lu(k,863) = lu(k,863) * lu(k,858)
         lu(k,864) = lu(k,864) * lu(k,858)
         lu(k,865) = lu(k,865) * lu(k,858)
         lu(k,866) = lu(k,866) * lu(k,858)
         lu(k,867) = lu(k,867) * lu(k,858)
         lu(k,868) = lu(k,868) * lu(k,858)
         lu(k,869) = lu(k,869) * lu(k,858)
         lu(k,870) = lu(k,870) * lu(k,858)
         lu(k,871) = lu(k,871) * lu(k,858)
         lu(k,872) = lu(k,872) * lu(k,858)
         lu(k,873) = lu(k,873) * lu(k,858)
         lu(k,874) = lu(k,874) * lu(k,858)
         lu(k,1683) = lu(k,1683) - lu(k,859) * lu(k,1682)
         lu(k,1685) = lu(k,1685) - lu(k,860) * lu(k,1682)
         lu(k,1687) = lu(k,1687) - lu(k,861) * lu(k,1682)
         lu(k,1692) = lu(k,1692) - lu(k,862) * lu(k,1682)
         lu(k,1694) = lu(k,1694) - lu(k,863) * lu(k,1682)
         lu(k,1695) = lu(k,1695) - lu(k,864) * lu(k,1682)
         lu(k,1697) = lu(k,1697) - lu(k,865) * lu(k,1682)
         lu(k,1698) = lu(k,1698) - lu(k,866) * lu(k,1682)
         lu(k,1704) = lu(k,1704) - lu(k,867) * lu(k,1682)
         lu(k,1710) = lu(k,1710) - lu(k,868) * lu(k,1682)
         lu(k,1719) = lu(k,1719) - lu(k,869) * lu(k,1682)
         lu(k,1720) = lu(k,1720) - lu(k,870) * lu(k,1682)
         lu(k,1722) = lu(k,1722) - lu(k,871) * lu(k,1682)
         lu(k,1723) = lu(k,1723) - lu(k,872) * lu(k,1682)
         lu(k,1728) = lu(k,1728) - lu(k,873) * lu(k,1682)
         lu(k,1730) = lu(k,1730) - lu(k,874) * lu(k,1682)
         lu(k,1751) = lu(k,1751) - lu(k,859) * lu(k,1750)
         lu(k,1753) = lu(k,1753) - lu(k,860) * lu(k,1750)
         lu(k,1754) = lu(k,1754) - lu(k,861) * lu(k,1750)
         lu(k,1757) = lu(k,1757) - lu(k,862) * lu(k,1750)
         lu(k,1759) = lu(k,1759) - lu(k,863) * lu(k,1750)
         lu(k,1760) = lu(k,1760) - lu(k,864) * lu(k,1750)
         lu(k,1762) = lu(k,1762) - lu(k,865) * lu(k,1750)
         lu(k,1763) = lu(k,1763) - lu(k,866) * lu(k,1750)
         lu(k,1767) = lu(k,1767) - lu(k,867) * lu(k,1750)
         lu(k,1773) = lu(k,1773) - lu(k,868) * lu(k,1750)
         lu(k,1781) = lu(k,1781) - lu(k,869) * lu(k,1750)
         lu(k,1782) = lu(k,1782) - lu(k,870) * lu(k,1750)
         lu(k,1784) = lu(k,1784) - lu(k,871) * lu(k,1750)
         lu(k,1785) = lu(k,1785) - lu(k,872) * lu(k,1750)
         lu(k,1790) = lu(k,1790) - lu(k,873) * lu(k,1750)
         lu(k,1792) = lu(k,1792) - lu(k,874) * lu(k,1750)
         lu(k,1870) = lu(k,1870) - lu(k,859) * lu(k,1869)
         lu(k,1872) = lu(k,1872) - lu(k,860) * lu(k,1869)
         lu(k,1873) = lu(k,1873) - lu(k,861) * lu(k,1869)
         lu(k,1878) = lu(k,1878) - lu(k,862) * lu(k,1869)
         lu(k,1880) = lu(k,1880) - lu(k,863) * lu(k,1869)
         lu(k,1881) = lu(k,1881) - lu(k,864) * lu(k,1869)
         lu(k,1883) = lu(k,1883) - lu(k,865) * lu(k,1869)
         lu(k,1884) = lu(k,1884) - lu(k,866) * lu(k,1869)
         lu(k,1889) = lu(k,1889) - lu(k,867) * lu(k,1869)
         lu(k,1895) = lu(k,1895) - lu(k,868) * lu(k,1869)
         lu(k,1903) = lu(k,1903) - lu(k,869) * lu(k,1869)
         lu(k,1904) = lu(k,1904) - lu(k,870) * lu(k,1869)
         lu(k,1906) = lu(k,1906) - lu(k,871) * lu(k,1869)
         lu(k,1907) = lu(k,1907) - lu(k,872) * lu(k,1869)
         lu(k,1912) = lu(k,1912) - lu(k,873) * lu(k,1869)
         lu(k,1914) = lu(k,1914) - lu(k,874) * lu(k,1869)
      end do
      end subroutine lu_fac18
      subroutine lu_fac19( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,880) = 1._r8 / lu(k,880)
         lu(k,881) = lu(k,881) * lu(k,880)
         lu(k,882) = lu(k,882) * lu(k,880)
         lu(k,883) = lu(k,883) * lu(k,880)
         lu(k,884) = lu(k,884) * lu(k,880)
         lu(k,885) = lu(k,885) * lu(k,880)
         lu(k,886) = lu(k,886) * lu(k,880)
         lu(k,887) = lu(k,887) * lu(k,880)
         lu(k,888) = lu(k,888) * lu(k,880)
         lu(k,889) = lu(k,889) * lu(k,880)
         lu(k,890) = lu(k,890) * lu(k,880)
         lu(k,1481) = lu(k,1481) - lu(k,881) * lu(k,1480)
         lu(k,1493) = lu(k,1493) - lu(k,882) * lu(k,1480)
         lu(k,1503) = lu(k,1503) - lu(k,883) * lu(k,1480)
         lu(k,1505) = lu(k,1505) - lu(k,884) * lu(k,1480)
         lu(k,1506) = lu(k,1506) - lu(k,885) * lu(k,1480)
         lu(k,1507) = lu(k,1507) - lu(k,886) * lu(k,1480)
         lu(k,1510) = lu(k,1510) - lu(k,887) * lu(k,1480)
         lu(k,1513) = lu(k,1513) - lu(k,888) * lu(k,1480)
         lu(k,1517) = lu(k,1517) - lu(k,889) * lu(k,1480)
         lu(k,1519) = lu(k,1519) - lu(k,890) * lu(k,1480)
         lu(k,1685) = lu(k,1685) - lu(k,881) * lu(k,1683)
         lu(k,1699) = lu(k,1699) - lu(k,882) * lu(k,1683)
         lu(k,1710) = lu(k,1710) - lu(k,883) * lu(k,1683)
         lu(k,1714) = lu(k,1714) - lu(k,884) * lu(k,1683)
         lu(k,1715) = lu(k,1715) - lu(k,885) * lu(k,1683)
         lu(k,1716) = lu(k,1716) - lu(k,886) * lu(k,1683)
         lu(k,1719) = lu(k,1719) - lu(k,887) * lu(k,1683)
         lu(k,1722) = lu(k,1722) - lu(k,888) * lu(k,1683)
         lu(k,1726) = lu(k,1726) - lu(k,889) * lu(k,1683)
         lu(k,1728) = lu(k,1728) - lu(k,890) * lu(k,1683)
         lu(k,1753) = lu(k,1753) - lu(k,881) * lu(k,1751)
         lu(k,1764) = lu(k,1764) - lu(k,882) * lu(k,1751)
         lu(k,1773) = lu(k,1773) - lu(k,883) * lu(k,1751)
         lu(k,1776) = lu(k,1776) - lu(k,884) * lu(k,1751)
         lu(k,1777) = lu(k,1777) - lu(k,885) * lu(k,1751)
         lu(k,1778) = lu(k,1778) - lu(k,886) * lu(k,1751)
         lu(k,1781) = lu(k,1781) - lu(k,887) * lu(k,1751)
         lu(k,1784) = lu(k,1784) - lu(k,888) * lu(k,1751)
         lu(k,1788) = lu(k,1788) - lu(k,889) * lu(k,1751)
         lu(k,1790) = lu(k,1790) - lu(k,890) * lu(k,1751)
         lu(k,1872) = lu(k,1872) - lu(k,881) * lu(k,1870)
         lu(k,1885) = lu(k,1885) - lu(k,882) * lu(k,1870)
         lu(k,1895) = lu(k,1895) - lu(k,883) * lu(k,1870)
         lu(k,1898) = lu(k,1898) - lu(k,884) * lu(k,1870)
         lu(k,1899) = lu(k,1899) - lu(k,885) * lu(k,1870)
         lu(k,1900) = lu(k,1900) - lu(k,886) * lu(k,1870)
         lu(k,1903) = lu(k,1903) - lu(k,887) * lu(k,1870)
         lu(k,1906) = lu(k,1906) - lu(k,888) * lu(k,1870)
         lu(k,1910) = lu(k,1910) - lu(k,889) * lu(k,1870)
         lu(k,1912) = lu(k,1912) - lu(k,890) * lu(k,1870)
         lu(k,2077) = lu(k,2077) - lu(k,881) * lu(k,2076)
         lu(k,2087) = lu(k,2087) - lu(k,882) * lu(k,2076)
         lu(k,2098) = lu(k,2098) - lu(k,883) * lu(k,2076)
         lu(k,2101) = lu(k,2101) - lu(k,884) * lu(k,2076)
         lu(k,2102) = lu(k,2102) - lu(k,885) * lu(k,2076)
         lu(k,2103) = lu(k,2103) - lu(k,886) * lu(k,2076)
         lu(k,2106) = lu(k,2106) - lu(k,887) * lu(k,2076)
         lu(k,2109) = lu(k,2109) - lu(k,888) * lu(k,2076)
         lu(k,2113) = lu(k,2113) - lu(k,889) * lu(k,2076)
         lu(k,2115) = lu(k,2115) - lu(k,890) * lu(k,2076)
         lu(k,892) = 1._r8 / lu(k,892)
         lu(k,893) = lu(k,893) * lu(k,892)
         lu(k,894) = lu(k,894) * lu(k,892)
         lu(k,895) = lu(k,895) * lu(k,892)
         lu(k,896) = lu(k,896) * lu(k,892)
         lu(k,897) = lu(k,897) * lu(k,892)
         lu(k,1318) = lu(k,1318) - lu(k,893) * lu(k,1317)
         lu(k,1323) = lu(k,1323) - lu(k,894) * lu(k,1317)
         lu(k,1325) = lu(k,1325) - lu(k,895) * lu(k,1317)
         lu(k,1329) = - lu(k,896) * lu(k,1317)
         lu(k,1331) = - lu(k,897) * lu(k,1317)
         lu(k,1425) = lu(k,1425) - lu(k,893) * lu(k,1422)
         lu(k,1431) = lu(k,1431) - lu(k,894) * lu(k,1422)
         lu(k,1433) = lu(k,1433) - lu(k,895) * lu(k,1422)
         lu(k,1438) = lu(k,1438) - lu(k,896) * lu(k,1422)
         lu(k,1440) = - lu(k,897) * lu(k,1422)
         lu(k,1711) = lu(k,1711) - lu(k,893) * lu(k,1684)
         lu(k,1719) = lu(k,1719) - lu(k,894) * lu(k,1684)
         lu(k,1721) = lu(k,1721) - lu(k,895) * lu(k,1684)
         lu(k,1728) = lu(k,1728) - lu(k,896) * lu(k,1684)
         lu(k,1730) = lu(k,1730) - lu(k,897) * lu(k,1684)
         lu(k,1774) = lu(k,1774) - lu(k,893) * lu(k,1752)
         lu(k,1781) = lu(k,1781) - lu(k,894) * lu(k,1752)
         lu(k,1783) = lu(k,1783) - lu(k,895) * lu(k,1752)
         lu(k,1790) = lu(k,1790) - lu(k,896) * lu(k,1752)
         lu(k,1792) = lu(k,1792) - lu(k,897) * lu(k,1752)
         lu(k,1814) = lu(k,1814) - lu(k,893) * lu(k,1810)
         lu(k,1822) = lu(k,1822) - lu(k,894) * lu(k,1810)
         lu(k,1824) = lu(k,1824) - lu(k,895) * lu(k,1810)
         lu(k,1831) = lu(k,1831) - lu(k,896) * lu(k,1810)
         lu(k,1833) = lu(k,1833) - lu(k,897) * lu(k,1810)
         lu(k,1896) = - lu(k,893) * lu(k,1871)
         lu(k,1903) = lu(k,1903) - lu(k,894) * lu(k,1871)
         lu(k,1905) = lu(k,1905) - lu(k,895) * lu(k,1871)
         lu(k,1912) = lu(k,1912) - lu(k,896) * lu(k,1871)
         lu(k,1914) = lu(k,1914) - lu(k,897) * lu(k,1871)
         lu(k,1979) = lu(k,1979) - lu(k,893) * lu(k,1972)
         lu(k,1987) = lu(k,1987) - lu(k,894) * lu(k,1972)
         lu(k,1989) = lu(k,1989) - lu(k,895) * lu(k,1972)
         lu(k,1996) = lu(k,1996) - lu(k,896) * lu(k,1972)
         lu(k,1998) = lu(k,1998) - lu(k,897) * lu(k,1972)
         lu(k,2004) = lu(k,2004) - lu(k,893) * lu(k,2003)
         lu(k,2011) = lu(k,2011) - lu(k,894) * lu(k,2003)
         lu(k,2013) = lu(k,2013) - lu(k,895) * lu(k,2003)
         lu(k,2020) = lu(k,2020) - lu(k,896) * lu(k,2003)
         lu(k,2022) = lu(k,2022) - lu(k,897) * lu(k,2003)
         lu(k,2125) = lu(k,2125) - lu(k,893) * lu(k,2123)
         lu(k,2133) = lu(k,2133) - lu(k,894) * lu(k,2123)
         lu(k,2135) = lu(k,2135) - lu(k,895) * lu(k,2123)
         lu(k,2142) = lu(k,2142) - lu(k,896) * lu(k,2123)
         lu(k,2144) = lu(k,2144) - lu(k,897) * lu(k,2123)
         lu(k,2151) = - lu(k,893) * lu(k,2149)
         lu(k,2159) = lu(k,2159) - lu(k,894) * lu(k,2149)
         lu(k,2161) = lu(k,2161) - lu(k,895) * lu(k,2149)
         lu(k,2168) = - lu(k,896) * lu(k,2149)
         lu(k,2170) = lu(k,2170) - lu(k,897) * lu(k,2149)
         lu(k,898) = 1._r8 / lu(k,898)
         lu(k,899) = lu(k,899) * lu(k,898)
         lu(k,900) = lu(k,900) * lu(k,898)
         lu(k,901) = lu(k,901) * lu(k,898)
         lu(k,902) = lu(k,902) * lu(k,898)
         lu(k,903) = lu(k,903) * lu(k,898)
         lu(k,971) = - lu(k,899) * lu(k,966)
         lu(k,973) = lu(k,973) - lu(k,900) * lu(k,966)
         lu(k,974) = - lu(k,901) * lu(k,966)
         lu(k,975) = lu(k,975) - lu(k,902) * lu(k,966)
         lu(k,980) = - lu(k,903) * lu(k,966)
         lu(k,984) = lu(k,984) - lu(k,899) * lu(k,981)
         lu(k,985) = lu(k,985) - lu(k,900) * lu(k,981)
         lu(k,986) = - lu(k,901) * lu(k,981)
         lu(k,987) = lu(k,987) - lu(k,902) * lu(k,981)
         lu(k,990) = - lu(k,903) * lu(k,981)
         lu(k,1011) = - lu(k,899) * lu(k,1004)
         lu(k,1012) = - lu(k,900) * lu(k,1004)
         lu(k,1013) = lu(k,1013) - lu(k,901) * lu(k,1004)
         lu(k,1015) = lu(k,1015) - lu(k,902) * lu(k,1004)
         lu(k,1022) = - lu(k,903) * lu(k,1004)
         lu(k,1031) = - lu(k,899) * lu(k,1026)
         lu(k,1032) = - lu(k,900) * lu(k,1026)
         lu(k,1033) = lu(k,1033) - lu(k,901) * lu(k,1026)
         lu(k,1035) = lu(k,1035) - lu(k,902) * lu(k,1026)
         lu(k,1041) = - lu(k,903) * lu(k,1026)
         lu(k,1384) = lu(k,1384) - lu(k,899) * lu(k,1374)
         lu(k,1395) = lu(k,1395) - lu(k,900) * lu(k,1374)
         lu(k,1396) = lu(k,1396) - lu(k,901) * lu(k,1374)
         lu(k,1400) = lu(k,1400) - lu(k,902) * lu(k,1374)
         lu(k,1409) = lu(k,1409) - lu(k,903) * lu(k,1374)
         lu(k,1492) = lu(k,1492) - lu(k,899) * lu(k,1481)
         lu(k,1503) = lu(k,1503) - lu(k,900) * lu(k,1481)
         lu(k,1505) = lu(k,1505) - lu(k,901) * lu(k,1481)
         lu(k,1510) = lu(k,1510) - lu(k,902) * lu(k,1481)
         lu(k,1521) = lu(k,1521) - lu(k,903) * lu(k,1481)
         lu(k,1698) = lu(k,1698) - lu(k,899) * lu(k,1685)
         lu(k,1710) = lu(k,1710) - lu(k,900) * lu(k,1685)
         lu(k,1714) = lu(k,1714) - lu(k,901) * lu(k,1685)
         lu(k,1719) = lu(k,1719) - lu(k,902) * lu(k,1685)
         lu(k,1730) = lu(k,1730) - lu(k,903) * lu(k,1685)
         lu(k,1763) = lu(k,1763) - lu(k,899) * lu(k,1753)
         lu(k,1773) = lu(k,1773) - lu(k,900) * lu(k,1753)
         lu(k,1776) = lu(k,1776) - lu(k,901) * lu(k,1753)
         lu(k,1781) = lu(k,1781) - lu(k,902) * lu(k,1753)
         lu(k,1792) = lu(k,1792) - lu(k,903) * lu(k,1753)
         lu(k,1884) = lu(k,1884) - lu(k,899) * lu(k,1872)
         lu(k,1895) = lu(k,1895) - lu(k,900) * lu(k,1872)
         lu(k,1898) = lu(k,1898) - lu(k,901) * lu(k,1872)
         lu(k,1903) = lu(k,1903) - lu(k,902) * lu(k,1872)
         lu(k,1914) = lu(k,1914) - lu(k,903) * lu(k,1872)
         lu(k,2086) = lu(k,2086) - lu(k,899) * lu(k,2077)
         lu(k,2098) = lu(k,2098) - lu(k,900) * lu(k,2077)
         lu(k,2101) = lu(k,2101) - lu(k,901) * lu(k,2077)
         lu(k,2106) = lu(k,2106) - lu(k,902) * lu(k,2077)
         lu(k,2117) = lu(k,2117) - lu(k,903) * lu(k,2077)
         lu(k,906) = 1._r8 / lu(k,906)
         lu(k,907) = lu(k,907) * lu(k,906)
         lu(k,908) = lu(k,908) * lu(k,906)
         lu(k,909) = lu(k,909) * lu(k,906)
         lu(k,910) = lu(k,910) * lu(k,906)
         lu(k,911) = lu(k,911) * lu(k,906)
         lu(k,912) = lu(k,912) * lu(k,906)
         lu(k,913) = lu(k,913) * lu(k,906)
         lu(k,914) = lu(k,914) * lu(k,906)
         lu(k,915) = lu(k,915) * lu(k,906)
         lu(k,1337) = lu(k,1337) - lu(k,907) * lu(k,1336)
         lu(k,1339) = lu(k,1339) - lu(k,908) * lu(k,1336)
         lu(k,1341) = lu(k,1341) - lu(k,909) * lu(k,1336)
         lu(k,1342) = lu(k,1342) - lu(k,910) * lu(k,1336)
         lu(k,1343) = - lu(k,911) * lu(k,1336)
         lu(k,1345) = lu(k,1345) - lu(k,912) * lu(k,1336)
         lu(k,1346) = - lu(k,913) * lu(k,1336)
         lu(k,1348) = lu(k,1348) - lu(k,914) * lu(k,1336)
         lu(k,1349) = lu(k,1349) - lu(k,915) * lu(k,1336)
         lu(k,1538) = lu(k,1538) - lu(k,907) * lu(k,1532)
         lu(k,1543) = lu(k,1543) - lu(k,908) * lu(k,1532)
         lu(k,1545) = lu(k,1545) - lu(k,909) * lu(k,1532)
         lu(k,1547) = lu(k,1547) - lu(k,910) * lu(k,1532)
         lu(k,1549) = lu(k,1549) - lu(k,911) * lu(k,1532)
         lu(k,1551) = - lu(k,912) * lu(k,1532)
         lu(k,1552) = lu(k,1552) - lu(k,913) * lu(k,1532)
         lu(k,1555) = lu(k,1555) - lu(k,914) * lu(k,1532)
         lu(k,1556) = lu(k,1556) - lu(k,915) * lu(k,1532)
         lu(k,1712) = lu(k,1712) - lu(k,907) * lu(k,1686)
         lu(k,1717) = lu(k,1717) - lu(k,908) * lu(k,1686)
         lu(k,1719) = lu(k,1719) - lu(k,909) * lu(k,1686)
         lu(k,1721) = lu(k,1721) - lu(k,910) * lu(k,1686)
         lu(k,1723) = lu(k,1723) - lu(k,911) * lu(k,1686)
         lu(k,1725) = lu(k,1725) - lu(k,912) * lu(k,1686)
         lu(k,1726) = lu(k,1726) - lu(k,913) * lu(k,1686)
         lu(k,1729) = lu(k,1729) - lu(k,914) * lu(k,1686)
         lu(k,1730) = lu(k,1730) - lu(k,915) * lu(k,1686)
         lu(k,1815) = lu(k,1815) - lu(k,907) * lu(k,1811)
         lu(k,1820) = lu(k,1820) - lu(k,908) * lu(k,1811)
         lu(k,1822) = lu(k,1822) - lu(k,909) * lu(k,1811)
         lu(k,1824) = lu(k,1824) - lu(k,910) * lu(k,1811)
         lu(k,1826) = lu(k,1826) - lu(k,911) * lu(k,1811)
         lu(k,1828) = lu(k,1828) - lu(k,912) * lu(k,1811)
         lu(k,1829) = lu(k,1829) - lu(k,913) * lu(k,1811)
         lu(k,1832) = lu(k,1832) - lu(k,914) * lu(k,1811)
         lu(k,1833) = lu(k,1833) - lu(k,915) * lu(k,1811)
         lu(k,1980) = lu(k,1980) - lu(k,907) * lu(k,1973)
         lu(k,1985) = lu(k,1985) - lu(k,908) * lu(k,1973)
         lu(k,1987) = lu(k,1987) - lu(k,909) * lu(k,1973)
         lu(k,1989) = lu(k,1989) - lu(k,910) * lu(k,1973)
         lu(k,1991) = lu(k,1991) - lu(k,911) * lu(k,1973)
         lu(k,1993) = lu(k,1993) - lu(k,912) * lu(k,1973)
         lu(k,1994) = lu(k,1994) - lu(k,913) * lu(k,1973)
         lu(k,1997) = lu(k,1997) - lu(k,914) * lu(k,1973)
         lu(k,1998) = lu(k,1998) - lu(k,915) * lu(k,1973)
         lu(k,2126) = lu(k,2126) - lu(k,907) * lu(k,2124)
         lu(k,2131) = lu(k,2131) - lu(k,908) * lu(k,2124)
         lu(k,2133) = lu(k,2133) - lu(k,909) * lu(k,2124)
         lu(k,2135) = lu(k,2135) - lu(k,910) * lu(k,2124)
         lu(k,2137) = - lu(k,911) * lu(k,2124)
         lu(k,2139) = - lu(k,912) * lu(k,2124)
         lu(k,2140) = lu(k,2140) - lu(k,913) * lu(k,2124)
         lu(k,2143) = lu(k,2143) - lu(k,914) * lu(k,2124)
         lu(k,2144) = lu(k,2144) - lu(k,915) * lu(k,2124)
      end do
      end subroutine lu_fac19
      subroutine lu_fac20( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,916) = 1._r8 / lu(k,916)
         lu(k,917) = lu(k,917) * lu(k,916)
         lu(k,918) = lu(k,918) * lu(k,916)
         lu(k,919) = lu(k,919) * lu(k,916)
         lu(k,920) = lu(k,920) * lu(k,916)
         lu(k,921) = lu(k,921) * lu(k,916)
         lu(k,922) = lu(k,922) * lu(k,916)
         lu(k,923) = lu(k,923) * lu(k,916)
         lu(k,1006) = - lu(k,917) * lu(k,1005)
         lu(k,1007) = - lu(k,918) * lu(k,1005)
         lu(k,1009) = - lu(k,919) * lu(k,1005)
         lu(k,1010) = - lu(k,920) * lu(k,1005)
         lu(k,1015) = lu(k,1015) - lu(k,921) * lu(k,1005)
         lu(k,1017) = - lu(k,922) * lu(k,1005)
         lu(k,1021) = lu(k,1021) - lu(k,923) * lu(k,1005)
         lu(k,1046) = - lu(k,917) * lu(k,1045)
         lu(k,1047) = - lu(k,918) * lu(k,1045)
         lu(k,1048) = - lu(k,919) * lu(k,1045)
         lu(k,1049) = lu(k,1049) - lu(k,920) * lu(k,1045)
         lu(k,1054) = lu(k,1054) - lu(k,921) * lu(k,1045)
         lu(k,1056) = lu(k,1056) - lu(k,922) * lu(k,1045)
         lu(k,1060) = lu(k,1060) - lu(k,923) * lu(k,1045)
         lu(k,1378) = lu(k,1378) - lu(k,917) * lu(k,1375)
         lu(k,1380) = lu(k,1380) - lu(k,918) * lu(k,1375)
         lu(k,1382) = lu(k,1382) - lu(k,919) * lu(k,1375)
         lu(k,1383) = lu(k,1383) - lu(k,920) * lu(k,1375)
         lu(k,1400) = lu(k,1400) - lu(k,921) * lu(k,1375)
         lu(k,1403) = - lu(k,922) * lu(k,1375)
         lu(k,1407) = lu(k,1407) - lu(k,923) * lu(k,1375)
         lu(k,1486) = lu(k,1486) - lu(k,917) * lu(k,1482)
         lu(k,1488) = lu(k,1488) - lu(k,918) * lu(k,1482)
         lu(k,1490) = lu(k,1490) - lu(k,919) * lu(k,1482)
         lu(k,1491) = lu(k,1491) - lu(k,920) * lu(k,1482)
         lu(k,1510) = lu(k,1510) - lu(k,921) * lu(k,1482)
         lu(k,1514) = lu(k,1514) - lu(k,922) * lu(k,1482)
         lu(k,1519) = lu(k,1519) - lu(k,923) * lu(k,1482)
         lu(k,1692) = lu(k,1692) - lu(k,917) * lu(k,1687)
         lu(k,1694) = lu(k,1694) - lu(k,918) * lu(k,1687)
         lu(k,1696) = lu(k,1696) - lu(k,919) * lu(k,1687)
         lu(k,1697) = lu(k,1697) - lu(k,920) * lu(k,1687)
         lu(k,1719) = lu(k,1719) - lu(k,921) * lu(k,1687)
         lu(k,1723) = lu(k,1723) - lu(k,922) * lu(k,1687)
         lu(k,1728) = lu(k,1728) - lu(k,923) * lu(k,1687)
         lu(k,1757) = lu(k,1757) - lu(k,917) * lu(k,1754)
         lu(k,1759) = lu(k,1759) - lu(k,918) * lu(k,1754)
         lu(k,1761) = - lu(k,919) * lu(k,1754)
         lu(k,1762) = lu(k,1762) - lu(k,920) * lu(k,1754)
         lu(k,1781) = lu(k,1781) - lu(k,921) * lu(k,1754)
         lu(k,1785) = lu(k,1785) - lu(k,922) * lu(k,1754)
         lu(k,1790) = lu(k,1790) - lu(k,923) * lu(k,1754)
         lu(k,1878) = lu(k,1878) - lu(k,917) * lu(k,1873)
         lu(k,1880) = lu(k,1880) - lu(k,918) * lu(k,1873)
         lu(k,1882) = lu(k,1882) - lu(k,919) * lu(k,1873)
         lu(k,1883) = lu(k,1883) - lu(k,920) * lu(k,1873)
         lu(k,1903) = lu(k,1903) - lu(k,921) * lu(k,1873)
         lu(k,1907) = lu(k,1907) - lu(k,922) * lu(k,1873)
         lu(k,1912) = lu(k,1912) - lu(k,923) * lu(k,1873)
         lu(k,2080) = lu(k,2080) - lu(k,917) * lu(k,2078)
         lu(k,2082) = lu(k,2082) - lu(k,918) * lu(k,2078)
         lu(k,2084) = lu(k,2084) - lu(k,919) * lu(k,2078)
         lu(k,2085) = lu(k,2085) - lu(k,920) * lu(k,2078)
         lu(k,2106) = lu(k,2106) - lu(k,921) * lu(k,2078)
         lu(k,2110) = lu(k,2110) - lu(k,922) * lu(k,2078)
         lu(k,2115) = lu(k,2115) - lu(k,923) * lu(k,2078)
         lu(k,928) = 1._r8 / lu(k,928)
         lu(k,929) = lu(k,929) * lu(k,928)
         lu(k,930) = lu(k,930) * lu(k,928)
         lu(k,931) = lu(k,931) * lu(k,928)
         lu(k,932) = lu(k,932) * lu(k,928)
         lu(k,933) = lu(k,933) * lu(k,928)
         lu(k,934) = lu(k,934) * lu(k,928)
         lu(k,935) = lu(k,935) * lu(k,928)
         lu(k,936) = lu(k,936) * lu(k,928)
         lu(k,937) = lu(k,937) * lu(k,928)
         lu(k,938) = lu(k,938) * lu(k,928)
         lu(k,1122) = - lu(k,929) * lu(k,1120)
         lu(k,1126) = lu(k,1126) - lu(k,930) * lu(k,1120)
         lu(k,1128) = lu(k,1128) - lu(k,931) * lu(k,1120)
         lu(k,1129) = lu(k,1129) - lu(k,932) * lu(k,1120)
         lu(k,1130) = lu(k,1130) - lu(k,933) * lu(k,1120)
         lu(k,1131) = lu(k,1131) - lu(k,934) * lu(k,1120)
         lu(k,1132) = lu(k,1132) - lu(k,935) * lu(k,1120)
         lu(k,1135) = lu(k,1135) - lu(k,936) * lu(k,1120)
         lu(k,1136) = lu(k,1136) - lu(k,937) * lu(k,1120)
         lu(k,1137) = lu(k,1137) - lu(k,938) * lu(k,1120)
         lu(k,1292) = lu(k,1292) - lu(k,929) * lu(k,1289)
         lu(k,1296) = lu(k,1296) - lu(k,930) * lu(k,1289)
         lu(k,1302) = lu(k,1302) - lu(k,931) * lu(k,1289)
         lu(k,1303) = lu(k,1303) - lu(k,932) * lu(k,1289)
         lu(k,1305) = lu(k,1305) - lu(k,933) * lu(k,1289)
         lu(k,1306) = lu(k,1306) - lu(k,934) * lu(k,1289)
         lu(k,1308) = lu(k,1308) - lu(k,935) * lu(k,1289)
         lu(k,1311) = - lu(k,936) * lu(k,1289)
         lu(k,1312) = lu(k,1312) - lu(k,937) * lu(k,1289)
         lu(k,1313) = lu(k,1313) - lu(k,938) * lu(k,1289)
         lu(k,1380) = lu(k,1380) - lu(k,929) * lu(k,1376)
         lu(k,1389) = lu(k,1389) - lu(k,930) * lu(k,1376)
         lu(k,1395) = lu(k,1395) - lu(k,931) * lu(k,1376)
         lu(k,1396) = lu(k,1396) - lu(k,932) * lu(k,1376)
         lu(k,1398) = lu(k,1398) - lu(k,933) * lu(k,1376)
         lu(k,1400) = lu(k,1400) - lu(k,934) * lu(k,1376)
         lu(k,1402) = lu(k,1402) - lu(k,935) * lu(k,1376)
         lu(k,1405) = lu(k,1405) - lu(k,936) * lu(k,1376)
         lu(k,1406) = lu(k,1406) - lu(k,937) * lu(k,1376)
         lu(k,1407) = lu(k,1407) - lu(k,938) * lu(k,1376)
         lu(k,1488) = lu(k,1488) - lu(k,929) * lu(k,1483)
         lu(k,1497) = lu(k,1497) - lu(k,930) * lu(k,1483)
         lu(k,1503) = lu(k,1503) - lu(k,931) * lu(k,1483)
         lu(k,1505) = lu(k,1505) - lu(k,932) * lu(k,1483)
         lu(k,1507) = lu(k,1507) - lu(k,933) * lu(k,1483)
         lu(k,1510) = lu(k,1510) - lu(k,934) * lu(k,1483)
         lu(k,1513) = lu(k,1513) - lu(k,935) * lu(k,1483)
         lu(k,1516) = lu(k,1516) - lu(k,936) * lu(k,1483)
         lu(k,1517) = lu(k,1517) - lu(k,937) * lu(k,1483)
         lu(k,1519) = lu(k,1519) - lu(k,938) * lu(k,1483)
         lu(k,1694) = lu(k,1694) - lu(k,929) * lu(k,1688)
         lu(k,1704) = lu(k,1704) - lu(k,930) * lu(k,1688)
         lu(k,1710) = lu(k,1710) - lu(k,931) * lu(k,1688)
         lu(k,1714) = lu(k,1714) - lu(k,932) * lu(k,1688)
         lu(k,1716) = lu(k,1716) - lu(k,933) * lu(k,1688)
         lu(k,1719) = lu(k,1719) - lu(k,934) * lu(k,1688)
         lu(k,1722) = lu(k,1722) - lu(k,935) * lu(k,1688)
         lu(k,1725) = lu(k,1725) - lu(k,936) * lu(k,1688)
         lu(k,1726) = lu(k,1726) - lu(k,937) * lu(k,1688)
         lu(k,1728) = lu(k,1728) - lu(k,938) * lu(k,1688)
         lu(k,1880) = lu(k,1880) - lu(k,929) * lu(k,1874)
         lu(k,1889) = lu(k,1889) - lu(k,930) * lu(k,1874)
         lu(k,1895) = lu(k,1895) - lu(k,931) * lu(k,1874)
         lu(k,1898) = lu(k,1898) - lu(k,932) * lu(k,1874)
         lu(k,1900) = lu(k,1900) - lu(k,933) * lu(k,1874)
         lu(k,1903) = lu(k,1903) - lu(k,934) * lu(k,1874)
         lu(k,1906) = lu(k,1906) - lu(k,935) * lu(k,1874)
         lu(k,1909) = lu(k,1909) - lu(k,936) * lu(k,1874)
         lu(k,1910) = lu(k,1910) - lu(k,937) * lu(k,1874)
         lu(k,1912) = lu(k,1912) - lu(k,938) * lu(k,1874)
         lu(k,943) = 1._r8 / lu(k,943)
         lu(k,944) = lu(k,944) * lu(k,943)
         lu(k,945) = lu(k,945) * lu(k,943)
         lu(k,946) = lu(k,946) * lu(k,943)
         lu(k,947) = lu(k,947) * lu(k,943)
         lu(k,948) = lu(k,948) * lu(k,943)
         lu(k,949) = lu(k,949) * lu(k,943)
         lu(k,950) = lu(k,950) * lu(k,943)
         lu(k,951) = lu(k,951) * lu(k,943)
         lu(k,952) = lu(k,952) * lu(k,943)
         lu(k,953) = lu(k,953) * lu(k,943)
         lu(k,954) = lu(k,954) * lu(k,943)
         lu(k,955) = lu(k,955) * lu(k,943)
         lu(k,956) = lu(k,956) * lu(k,943)
         lu(k,957) = lu(k,957) * lu(k,943)
         lu(k,958) = lu(k,958) * lu(k,943)
         lu(k,1246) = - lu(k,944) * lu(k,1245)
         lu(k,1247) = lu(k,1247) - lu(k,945) * lu(k,1245)
         lu(k,1248) = lu(k,1248) - lu(k,946) * lu(k,1245)
         lu(k,1249) = lu(k,1249) - lu(k,947) * lu(k,1245)
         lu(k,1253) = lu(k,1253) - lu(k,948) * lu(k,1245)
         lu(k,1254) = lu(k,1254) - lu(k,949) * lu(k,1245)
         lu(k,1255) = - lu(k,950) * lu(k,1245)
         lu(k,1256) = - lu(k,951) * lu(k,1245)
         lu(k,1257) = lu(k,1257) - lu(k,952) * lu(k,1245)
         lu(k,1258) = lu(k,1258) - lu(k,953) * lu(k,1245)
         lu(k,1259) = lu(k,1259) - lu(k,954) * lu(k,1245)
         lu(k,1260) = - lu(k,955) * lu(k,1245)
         lu(k,1263) = - lu(k,956) * lu(k,1245)
         lu(k,1264) = lu(k,1264) - lu(k,957) * lu(k,1245)
         lu(k,1265) = lu(k,1265) - lu(k,958) * lu(k,1245)
         lu(k,1693) = lu(k,1693) - lu(k,944) * lu(k,1689)
         lu(k,1694) = lu(k,1694) - lu(k,945) * lu(k,1689)
         lu(k,1699) = lu(k,1699) - lu(k,946) * lu(k,1689)
         lu(k,1704) = lu(k,1704) - lu(k,947) * lu(k,1689)
         lu(k,1710) = lu(k,1710) - lu(k,948) * lu(k,1689)
         lu(k,1714) = lu(k,1714) - lu(k,949) * lu(k,1689)
         lu(k,1715) = lu(k,1715) - lu(k,950) * lu(k,1689)
         lu(k,1716) = lu(k,1716) - lu(k,951) * lu(k,1689)
         lu(k,1719) = lu(k,1719) - lu(k,952) * lu(k,1689)
         lu(k,1720) = lu(k,1720) - lu(k,953) * lu(k,1689)
         lu(k,1722) = lu(k,1722) - lu(k,954) * lu(k,1689)
         lu(k,1723) = lu(k,1723) - lu(k,955) * lu(k,1689)
         lu(k,1726) = lu(k,1726) - lu(k,956) * lu(k,1689)
         lu(k,1728) = lu(k,1728) - lu(k,957) * lu(k,1689)
         lu(k,1730) = lu(k,1730) - lu(k,958) * lu(k,1689)
         lu(k,1758) = - lu(k,944) * lu(k,1755)
         lu(k,1759) = lu(k,1759) - lu(k,945) * lu(k,1755)
         lu(k,1764) = lu(k,1764) - lu(k,946) * lu(k,1755)
         lu(k,1767) = lu(k,1767) - lu(k,947) * lu(k,1755)
         lu(k,1773) = lu(k,1773) - lu(k,948) * lu(k,1755)
         lu(k,1776) = lu(k,1776) - lu(k,949) * lu(k,1755)
         lu(k,1777) = lu(k,1777) - lu(k,950) * lu(k,1755)
         lu(k,1778) = lu(k,1778) - lu(k,951) * lu(k,1755)
         lu(k,1781) = lu(k,1781) - lu(k,952) * lu(k,1755)
         lu(k,1782) = lu(k,1782) - lu(k,953) * lu(k,1755)
         lu(k,1784) = lu(k,1784) - lu(k,954) * lu(k,1755)
         lu(k,1785) = lu(k,1785) - lu(k,955) * lu(k,1755)
         lu(k,1788) = lu(k,1788) - lu(k,956) * lu(k,1755)
         lu(k,1790) = lu(k,1790) - lu(k,957) * lu(k,1755)
         lu(k,1792) = lu(k,1792) - lu(k,958) * lu(k,1755)
         lu(k,1879) = lu(k,1879) - lu(k,944) * lu(k,1875)
         lu(k,1880) = lu(k,1880) - lu(k,945) * lu(k,1875)
         lu(k,1885) = lu(k,1885) - lu(k,946) * lu(k,1875)
         lu(k,1889) = lu(k,1889) - lu(k,947) * lu(k,1875)
         lu(k,1895) = lu(k,1895) - lu(k,948) * lu(k,1875)
         lu(k,1898) = lu(k,1898) - lu(k,949) * lu(k,1875)
         lu(k,1899) = lu(k,1899) - lu(k,950) * lu(k,1875)
         lu(k,1900) = lu(k,1900) - lu(k,951) * lu(k,1875)
         lu(k,1903) = lu(k,1903) - lu(k,952) * lu(k,1875)
         lu(k,1904) = lu(k,1904) - lu(k,953) * lu(k,1875)
         lu(k,1906) = lu(k,1906) - lu(k,954) * lu(k,1875)
         lu(k,1907) = lu(k,1907) - lu(k,955) * lu(k,1875)
         lu(k,1910) = lu(k,1910) - lu(k,956) * lu(k,1875)
         lu(k,1912) = lu(k,1912) - lu(k,957) * lu(k,1875)
         lu(k,1914) = lu(k,1914) - lu(k,958) * lu(k,1875)
      end do
      end subroutine lu_fac20
      subroutine lu_fac21( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,960) = 1._r8 / lu(k,960)
         lu(k,961) = lu(k,961) * lu(k,960)
         lu(k,962) = lu(k,962) * lu(k,960)
         lu(k,963) = lu(k,963) * lu(k,960)
         lu(k,964) = lu(k,964) * lu(k,960)
         lu(k,970) = lu(k,970) - lu(k,961) * lu(k,967)
         lu(k,975) = lu(k,975) - lu(k,962) * lu(k,967)
         lu(k,976) = lu(k,976) - lu(k,963) * lu(k,967)
         lu(k,979) = lu(k,979) - lu(k,964) * lu(k,967)
         lu(k,1029) = lu(k,1029) - lu(k,961) * lu(k,1027)
         lu(k,1035) = lu(k,1035) - lu(k,962) * lu(k,1027)
         lu(k,1036) = lu(k,1036) - lu(k,963) * lu(k,1027)
         lu(k,1040) = lu(k,1040) - lu(k,964) * lu(k,1027)
         lu(k,1090) = lu(k,1090) - lu(k,961) * lu(k,1088)
         lu(k,1096) = lu(k,1096) - lu(k,962) * lu(k,1088)
         lu(k,1097) = lu(k,1097) - lu(k,963) * lu(k,1088)
         lu(k,1101) = lu(k,1101) - lu(k,964) * lu(k,1088)
         lu(k,1122) = lu(k,1122) - lu(k,961) * lu(k,1121)
         lu(k,1131) = lu(k,1131) - lu(k,962) * lu(k,1121)
         lu(k,1132) = lu(k,1132) - lu(k,963) * lu(k,1121)
         lu(k,1137) = lu(k,1137) - lu(k,964) * lu(k,1121)
         lu(k,1166) = - lu(k,961) * lu(k,1163)
         lu(k,1179) = lu(k,1179) - lu(k,962) * lu(k,1163)
         lu(k,1181) = lu(k,1181) - lu(k,963) * lu(k,1163)
         lu(k,1186) = lu(k,1186) - lu(k,964) * lu(k,1163)
         lu(k,1200) = lu(k,1200) - lu(k,961) * lu(k,1197)
         lu(k,1213) = lu(k,1213) - lu(k,962) * lu(k,1197)
         lu(k,1215) = lu(k,1215) - lu(k,963) * lu(k,1197)
         lu(k,1220) = lu(k,1220) - lu(k,964) * lu(k,1197)
         lu(k,1227) = lu(k,1227) - lu(k,961) * lu(k,1224)
         lu(k,1236) = lu(k,1236) - lu(k,962) * lu(k,1224)
         lu(k,1237) = lu(k,1237) - lu(k,963) * lu(k,1224)
         lu(k,1242) = lu(k,1242) - lu(k,964) * lu(k,1224)
         lu(k,1292) = lu(k,1292) - lu(k,961) * lu(k,1290)
         lu(k,1306) = lu(k,1306) - lu(k,962) * lu(k,1290)
         lu(k,1308) = lu(k,1308) - lu(k,963) * lu(k,1290)
         lu(k,1313) = lu(k,1313) - lu(k,964) * lu(k,1290)
         lu(k,1380) = lu(k,1380) - lu(k,961) * lu(k,1377)
         lu(k,1400) = lu(k,1400) - lu(k,962) * lu(k,1377)
         lu(k,1402) = lu(k,1402) - lu(k,963) * lu(k,1377)
         lu(k,1407) = lu(k,1407) - lu(k,964) * lu(k,1377)
         lu(k,1424) = lu(k,1424) - lu(k,961) * lu(k,1423)
         lu(k,1431) = lu(k,1431) - lu(k,962) * lu(k,1423)
         lu(k,1434) = lu(k,1434) - lu(k,963) * lu(k,1423)
         lu(k,1438) = lu(k,1438) - lu(k,964) * lu(k,1423)
         lu(k,1488) = lu(k,1488) - lu(k,961) * lu(k,1484)
         lu(k,1510) = lu(k,1510) - lu(k,962) * lu(k,1484)
         lu(k,1513) = lu(k,1513) - lu(k,963) * lu(k,1484)
         lu(k,1519) = lu(k,1519) - lu(k,964) * lu(k,1484)
         lu(k,1534) = lu(k,1534) - lu(k,961) * lu(k,1533)
         lu(k,1545) = lu(k,1545) - lu(k,962) * lu(k,1533)
         lu(k,1548) = lu(k,1548) - lu(k,963) * lu(k,1533)
         lu(k,1554) = lu(k,1554) - lu(k,964) * lu(k,1533)
         lu(k,1694) = lu(k,1694) - lu(k,961) * lu(k,1690)
         lu(k,1719) = lu(k,1719) - lu(k,962) * lu(k,1690)
         lu(k,1722) = lu(k,1722) - lu(k,963) * lu(k,1690)
         lu(k,1728) = lu(k,1728) - lu(k,964) * lu(k,1690)
         lu(k,1759) = lu(k,1759) - lu(k,961) * lu(k,1756)
         lu(k,1781) = lu(k,1781) - lu(k,962) * lu(k,1756)
         lu(k,1784) = lu(k,1784) - lu(k,963) * lu(k,1756)
         lu(k,1790) = lu(k,1790) - lu(k,964) * lu(k,1756)
         lu(k,1880) = lu(k,1880) - lu(k,961) * lu(k,1876)
         lu(k,1903) = lu(k,1903) - lu(k,962) * lu(k,1876)
         lu(k,1906) = lu(k,1906) - lu(k,963) * lu(k,1876)
         lu(k,1912) = lu(k,1912) - lu(k,964) * lu(k,1876)
         lu(k,2082) = lu(k,2082) - lu(k,961) * lu(k,2079)
         lu(k,2106) = lu(k,2106) - lu(k,962) * lu(k,2079)
         lu(k,2109) = lu(k,2109) - lu(k,963) * lu(k,2079)
         lu(k,2115) = lu(k,2115) - lu(k,964) * lu(k,2079)
         lu(k,968) = 1._r8 / lu(k,968)
         lu(k,969) = lu(k,969) * lu(k,968)
         lu(k,970) = lu(k,970) * lu(k,968)
         lu(k,971) = lu(k,971) * lu(k,968)
         lu(k,972) = lu(k,972) * lu(k,968)
         lu(k,973) = lu(k,973) * lu(k,968)
         lu(k,974) = lu(k,974) * lu(k,968)
         lu(k,975) = lu(k,975) * lu(k,968)
         lu(k,976) = lu(k,976) * lu(k,968)
         lu(k,977) = lu(k,977) * lu(k,968)
         lu(k,978) = lu(k,978) * lu(k,968)
         lu(k,979) = lu(k,979) * lu(k,968)
         lu(k,980) = lu(k,980) * lu(k,968)
         lu(k,1165) = lu(k,1165) - lu(k,969) * lu(k,1164)
         lu(k,1166) = lu(k,1166) - lu(k,970) * lu(k,1164)
         lu(k,1167) = - lu(k,971) * lu(k,1164)
         lu(k,1168) = - lu(k,972) * lu(k,1164)
         lu(k,1176) = lu(k,1176) - lu(k,973) * lu(k,1164)
         lu(k,1177) = lu(k,1177) - lu(k,974) * lu(k,1164)
         lu(k,1179) = lu(k,1179) - lu(k,975) * lu(k,1164)
         lu(k,1181) = lu(k,1181) - lu(k,976) * lu(k,1164)
         lu(k,1184) = lu(k,1184) - lu(k,977) * lu(k,1164)
         lu(k,1185) = lu(k,1185) - lu(k,978) * lu(k,1164)
         lu(k,1186) = lu(k,1186) - lu(k,979) * lu(k,1164)
         lu(k,1187) = - lu(k,980) * lu(k,1164)
         lu(k,1199) = lu(k,1199) - lu(k,969) * lu(k,1198)
         lu(k,1200) = lu(k,1200) - lu(k,970) * lu(k,1198)
         lu(k,1201) = - lu(k,971) * lu(k,1198)
         lu(k,1202) = - lu(k,972) * lu(k,1198)
         lu(k,1210) = lu(k,1210) - lu(k,973) * lu(k,1198)
         lu(k,1211) = lu(k,1211) - lu(k,974) * lu(k,1198)
         lu(k,1213) = lu(k,1213) - lu(k,975) * lu(k,1198)
         lu(k,1215) = lu(k,1215) - lu(k,976) * lu(k,1198)
         lu(k,1218) = lu(k,1218) - lu(k,977) * lu(k,1198)
         lu(k,1219) = lu(k,1219) - lu(k,978) * lu(k,1198)
         lu(k,1220) = lu(k,1220) - lu(k,979) * lu(k,1198)
         lu(k,1221) = - lu(k,980) * lu(k,1198)
         lu(k,1226) = lu(k,1226) - lu(k,969) * lu(k,1225)
         lu(k,1227) = lu(k,1227) - lu(k,970) * lu(k,1225)
         lu(k,1228) = - lu(k,971) * lu(k,1225)
         lu(k,1229) = - lu(k,972) * lu(k,1225)
         lu(k,1233) = lu(k,1233) - lu(k,973) * lu(k,1225)
         lu(k,1234) = lu(k,1234) - lu(k,974) * lu(k,1225)
         lu(k,1236) = lu(k,1236) - lu(k,975) * lu(k,1225)
         lu(k,1237) = lu(k,1237) - lu(k,976) * lu(k,1225)
         lu(k,1240) = - lu(k,977) * lu(k,1225)
         lu(k,1241) = lu(k,1241) - lu(k,978) * lu(k,1225)
         lu(k,1242) = lu(k,1242) - lu(k,979) * lu(k,1225)
         lu(k,1243) = - lu(k,980) * lu(k,1225)
         lu(k,1487) = lu(k,1487) - lu(k,969) * lu(k,1485)
         lu(k,1488) = lu(k,1488) - lu(k,970) * lu(k,1485)
         lu(k,1492) = lu(k,1492) - lu(k,971) * lu(k,1485)
         lu(k,1493) = lu(k,1493) - lu(k,972) * lu(k,1485)
         lu(k,1503) = lu(k,1503) - lu(k,973) * lu(k,1485)
         lu(k,1505) = lu(k,1505) - lu(k,974) * lu(k,1485)
         lu(k,1510) = lu(k,1510) - lu(k,975) * lu(k,1485)
         lu(k,1513) = lu(k,1513) - lu(k,976) * lu(k,1485)
         lu(k,1516) = lu(k,1516) - lu(k,977) * lu(k,1485)
         lu(k,1517) = lu(k,1517) - lu(k,978) * lu(k,1485)
         lu(k,1519) = lu(k,1519) - lu(k,979) * lu(k,1485)
         lu(k,1521) = lu(k,1521) - lu(k,980) * lu(k,1485)
         lu(k,1693) = lu(k,1693) - lu(k,969) * lu(k,1691)
         lu(k,1694) = lu(k,1694) - lu(k,970) * lu(k,1691)
         lu(k,1698) = lu(k,1698) - lu(k,971) * lu(k,1691)
         lu(k,1699) = lu(k,1699) - lu(k,972) * lu(k,1691)
         lu(k,1710) = lu(k,1710) - lu(k,973) * lu(k,1691)
         lu(k,1714) = lu(k,1714) - lu(k,974) * lu(k,1691)
         lu(k,1719) = lu(k,1719) - lu(k,975) * lu(k,1691)
         lu(k,1722) = lu(k,1722) - lu(k,976) * lu(k,1691)
         lu(k,1725) = lu(k,1725) - lu(k,977) * lu(k,1691)
         lu(k,1726) = lu(k,1726) - lu(k,978) * lu(k,1691)
         lu(k,1728) = lu(k,1728) - lu(k,979) * lu(k,1691)
         lu(k,1730) = lu(k,1730) - lu(k,980) * lu(k,1691)
         lu(k,1879) = lu(k,1879) - lu(k,969) * lu(k,1877)
         lu(k,1880) = lu(k,1880) - lu(k,970) * lu(k,1877)
         lu(k,1884) = lu(k,1884) - lu(k,971) * lu(k,1877)
         lu(k,1885) = lu(k,1885) - lu(k,972) * lu(k,1877)
         lu(k,1895) = lu(k,1895) - lu(k,973) * lu(k,1877)
         lu(k,1898) = lu(k,1898) - lu(k,974) * lu(k,1877)
         lu(k,1903) = lu(k,1903) - lu(k,975) * lu(k,1877)
         lu(k,1906) = lu(k,1906) - lu(k,976) * lu(k,1877)
         lu(k,1909) = lu(k,1909) - lu(k,977) * lu(k,1877)
         lu(k,1910) = lu(k,1910) - lu(k,978) * lu(k,1877)
         lu(k,1912) = lu(k,1912) - lu(k,979) * lu(k,1877)
         lu(k,1914) = lu(k,1914) - lu(k,980) * lu(k,1877)
         lu(k,982) = 1._r8 / lu(k,982)
         lu(k,983) = lu(k,983) * lu(k,982)
         lu(k,984) = lu(k,984) * lu(k,982)
         lu(k,985) = lu(k,985) * lu(k,982)
         lu(k,986) = lu(k,986) * lu(k,982)
         lu(k,987) = lu(k,987) * lu(k,982)
         lu(k,988) = lu(k,988) * lu(k,982)
         lu(k,989) = lu(k,989) * lu(k,982)
         lu(k,990) = lu(k,990) * lu(k,982)
         lu(k,1007) = lu(k,1007) - lu(k,983) * lu(k,1006)
         lu(k,1011) = lu(k,1011) - lu(k,984) * lu(k,1006)
         lu(k,1012) = lu(k,1012) - lu(k,985) * lu(k,1006)
         lu(k,1013) = lu(k,1013) - lu(k,986) * lu(k,1006)
         lu(k,1015) = lu(k,1015) - lu(k,987) * lu(k,1006)
         lu(k,1016) = lu(k,1016) - lu(k,988) * lu(k,1006)
         lu(k,1021) = lu(k,1021) - lu(k,989) * lu(k,1006)
         lu(k,1022) = lu(k,1022) - lu(k,990) * lu(k,1006)
         lu(k,1029) = lu(k,1029) - lu(k,983) * lu(k,1028)
         lu(k,1031) = lu(k,1031) - lu(k,984) * lu(k,1028)
         lu(k,1032) = lu(k,1032) - lu(k,985) * lu(k,1028)
         lu(k,1033) = lu(k,1033) - lu(k,986) * lu(k,1028)
         lu(k,1035) = lu(k,1035) - lu(k,987) * lu(k,1028)
         lu(k,1036) = lu(k,1036) - lu(k,988) * lu(k,1028)
         lu(k,1040) = lu(k,1040) - lu(k,989) * lu(k,1028)
         lu(k,1041) = lu(k,1041) - lu(k,990) * lu(k,1028)
         lu(k,1047) = lu(k,1047) - lu(k,983) * lu(k,1046)
         lu(k,1050) = - lu(k,984) * lu(k,1046)
         lu(k,1051) = - lu(k,985) * lu(k,1046)
         lu(k,1052) = lu(k,1052) - lu(k,986) * lu(k,1046)
         lu(k,1054) = lu(k,1054) - lu(k,987) * lu(k,1046)
         lu(k,1055) = lu(k,1055) - lu(k,988) * lu(k,1046)
         lu(k,1060) = lu(k,1060) - lu(k,989) * lu(k,1046)
         lu(k,1061) = - lu(k,990) * lu(k,1046)
         lu(k,1380) = lu(k,1380) - lu(k,983) * lu(k,1378)
         lu(k,1384) = lu(k,1384) - lu(k,984) * lu(k,1378)
         lu(k,1395) = lu(k,1395) - lu(k,985) * lu(k,1378)
         lu(k,1396) = lu(k,1396) - lu(k,986) * lu(k,1378)
         lu(k,1400) = lu(k,1400) - lu(k,987) * lu(k,1378)
         lu(k,1402) = lu(k,1402) - lu(k,988) * lu(k,1378)
         lu(k,1407) = lu(k,1407) - lu(k,989) * lu(k,1378)
         lu(k,1409) = lu(k,1409) - lu(k,990) * lu(k,1378)
         lu(k,1488) = lu(k,1488) - lu(k,983) * lu(k,1486)
         lu(k,1492) = lu(k,1492) - lu(k,984) * lu(k,1486)
         lu(k,1503) = lu(k,1503) - lu(k,985) * lu(k,1486)
         lu(k,1505) = lu(k,1505) - lu(k,986) * lu(k,1486)
         lu(k,1510) = lu(k,1510) - lu(k,987) * lu(k,1486)
         lu(k,1513) = lu(k,1513) - lu(k,988) * lu(k,1486)
         lu(k,1519) = lu(k,1519) - lu(k,989) * lu(k,1486)
         lu(k,1521) = lu(k,1521) - lu(k,990) * lu(k,1486)
         lu(k,1694) = lu(k,1694) - lu(k,983) * lu(k,1692)
         lu(k,1698) = lu(k,1698) - lu(k,984) * lu(k,1692)
         lu(k,1710) = lu(k,1710) - lu(k,985) * lu(k,1692)
         lu(k,1714) = lu(k,1714) - lu(k,986) * lu(k,1692)
         lu(k,1719) = lu(k,1719) - lu(k,987) * lu(k,1692)
         lu(k,1722) = lu(k,1722) - lu(k,988) * lu(k,1692)
         lu(k,1728) = lu(k,1728) - lu(k,989) * lu(k,1692)
         lu(k,1730) = lu(k,1730) - lu(k,990) * lu(k,1692)
         lu(k,1759) = lu(k,1759) - lu(k,983) * lu(k,1757)
         lu(k,1763) = lu(k,1763) - lu(k,984) * lu(k,1757)
         lu(k,1773) = lu(k,1773) - lu(k,985) * lu(k,1757)
         lu(k,1776) = lu(k,1776) - lu(k,986) * lu(k,1757)
         lu(k,1781) = lu(k,1781) - lu(k,987) * lu(k,1757)
         lu(k,1784) = lu(k,1784) - lu(k,988) * lu(k,1757)
         lu(k,1790) = lu(k,1790) - lu(k,989) * lu(k,1757)
         lu(k,1792) = lu(k,1792) - lu(k,990) * lu(k,1757)
         lu(k,1880) = lu(k,1880) - lu(k,983) * lu(k,1878)
         lu(k,1884) = lu(k,1884) - lu(k,984) * lu(k,1878)
         lu(k,1895) = lu(k,1895) - lu(k,985) * lu(k,1878)
         lu(k,1898) = lu(k,1898) - lu(k,986) * lu(k,1878)
         lu(k,1903) = lu(k,1903) - lu(k,987) * lu(k,1878)
         lu(k,1906) = lu(k,1906) - lu(k,988) * lu(k,1878)
         lu(k,1912) = lu(k,1912) - lu(k,989) * lu(k,1878)
         lu(k,1914) = lu(k,1914) - lu(k,990) * lu(k,1878)
         lu(k,2082) = lu(k,2082) - lu(k,983) * lu(k,2080)
         lu(k,2086) = lu(k,2086) - lu(k,984) * lu(k,2080)
         lu(k,2098) = lu(k,2098) - lu(k,985) * lu(k,2080)
         lu(k,2101) = lu(k,2101) - lu(k,986) * lu(k,2080)
         lu(k,2106) = lu(k,2106) - lu(k,987) * lu(k,2080)
         lu(k,2109) = lu(k,2109) - lu(k,988) * lu(k,2080)
         lu(k,2115) = lu(k,2115) - lu(k,989) * lu(k,2080)
         lu(k,2117) = lu(k,2117) - lu(k,990) * lu(k,2080)
         lu(k,991) = 1._r8 / lu(k,991)
         lu(k,992) = lu(k,992) * lu(k,991)
         lu(k,993) = lu(k,993) * lu(k,991)
         lu(k,994) = lu(k,994) * lu(k,991)
         lu(k,995) = lu(k,995) * lu(k,991)
         lu(k,996) = lu(k,996) * lu(k,991)
         lu(k,1066) = lu(k,1066) - lu(k,992) * lu(k,1064)
         lu(k,1067) = lu(k,1067) - lu(k,993) * lu(k,1064)
         lu(k,1070) = lu(k,1070) - lu(k,994) * lu(k,1064)
         lu(k,1071) = lu(k,1071) - lu(k,995) * lu(k,1064)
         lu(k,1073) = lu(k,1073) - lu(k,996) * lu(k,1064)
         lu(k,1092) = lu(k,1092) - lu(k,992) * lu(k,1089)
         lu(k,1093) = lu(k,1093) - lu(k,993) * lu(k,1089)
         lu(k,1096) = lu(k,1096) - lu(k,994) * lu(k,1089)
         lu(k,1097) = lu(k,1097) - lu(k,995) * lu(k,1089)
         lu(k,1101) = lu(k,1101) - lu(k,996) * lu(k,1089)
         lu(k,1171) = - lu(k,992) * lu(k,1165)
         lu(k,1176) = lu(k,1176) - lu(k,993) * lu(k,1165)
         lu(k,1179) = lu(k,1179) - lu(k,994) * lu(k,1165)
         lu(k,1181) = lu(k,1181) - lu(k,995) * lu(k,1165)
         lu(k,1186) = lu(k,1186) - lu(k,996) * lu(k,1165)
         lu(k,1205) = lu(k,1205) - lu(k,992) * lu(k,1199)
         lu(k,1210) = lu(k,1210) - lu(k,993) * lu(k,1199)
         lu(k,1213) = lu(k,1213) - lu(k,994) * lu(k,1199)
         lu(k,1215) = lu(k,1215) - lu(k,995) * lu(k,1199)
         lu(k,1220) = lu(k,1220) - lu(k,996) * lu(k,1199)
         lu(k,1230) = lu(k,1230) - lu(k,992) * lu(k,1226)
         lu(k,1233) = lu(k,1233) - lu(k,993) * lu(k,1226)
         lu(k,1236) = lu(k,1236) - lu(k,994) * lu(k,1226)
         lu(k,1237) = lu(k,1237) - lu(k,995) * lu(k,1226)
         lu(k,1242) = lu(k,1242) - lu(k,996) * lu(k,1226)
         lu(k,1249) = lu(k,1249) - lu(k,992) * lu(k,1246)
         lu(k,1253) = lu(k,1253) - lu(k,993) * lu(k,1246)
         lu(k,1257) = lu(k,1257) - lu(k,994) * lu(k,1246)
         lu(k,1259) = lu(k,1259) - lu(k,995) * lu(k,1246)
         lu(k,1264) = lu(k,1264) - lu(k,996) * lu(k,1246)
         lu(k,1270) = - lu(k,992) * lu(k,1269)
         lu(k,1272) = lu(k,1272) - lu(k,993) * lu(k,1269)
         lu(k,1275) = lu(k,1275) - lu(k,994) * lu(k,1269)
         lu(k,1277) = lu(k,1277) - lu(k,995) * lu(k,1269)
         lu(k,1282) = lu(k,1282) - lu(k,996) * lu(k,1269)
         lu(k,1296) = lu(k,1296) - lu(k,992) * lu(k,1291)
         lu(k,1302) = lu(k,1302) - lu(k,993) * lu(k,1291)
         lu(k,1306) = lu(k,1306) - lu(k,994) * lu(k,1291)
         lu(k,1308) = lu(k,1308) - lu(k,995) * lu(k,1291)
         lu(k,1313) = lu(k,1313) - lu(k,996) * lu(k,1291)
         lu(k,1389) = lu(k,1389) - lu(k,992) * lu(k,1379)
         lu(k,1395) = lu(k,1395) - lu(k,993) * lu(k,1379)
         lu(k,1400) = lu(k,1400) - lu(k,994) * lu(k,1379)
         lu(k,1402) = lu(k,1402) - lu(k,995) * lu(k,1379)
         lu(k,1407) = lu(k,1407) - lu(k,996) * lu(k,1379)
         lu(k,1497) = lu(k,1497) - lu(k,992) * lu(k,1487)
         lu(k,1503) = lu(k,1503) - lu(k,993) * lu(k,1487)
         lu(k,1510) = lu(k,1510) - lu(k,994) * lu(k,1487)
         lu(k,1513) = lu(k,1513) - lu(k,995) * lu(k,1487)
         lu(k,1519) = lu(k,1519) - lu(k,996) * lu(k,1487)
         lu(k,1704) = lu(k,1704) - lu(k,992) * lu(k,1693)
         lu(k,1710) = lu(k,1710) - lu(k,993) * lu(k,1693)
         lu(k,1719) = lu(k,1719) - lu(k,994) * lu(k,1693)
         lu(k,1722) = lu(k,1722) - lu(k,995) * lu(k,1693)
         lu(k,1728) = lu(k,1728) - lu(k,996) * lu(k,1693)
         lu(k,1767) = lu(k,1767) - lu(k,992) * lu(k,1758)
         lu(k,1773) = lu(k,1773) - lu(k,993) * lu(k,1758)
         lu(k,1781) = lu(k,1781) - lu(k,994) * lu(k,1758)
         lu(k,1784) = lu(k,1784) - lu(k,995) * lu(k,1758)
         lu(k,1790) = lu(k,1790) - lu(k,996) * lu(k,1758)
         lu(k,1889) = lu(k,1889) - lu(k,992) * lu(k,1879)
         lu(k,1895) = lu(k,1895) - lu(k,993) * lu(k,1879)
         lu(k,1903) = lu(k,1903) - lu(k,994) * lu(k,1879)
         lu(k,1906) = lu(k,1906) - lu(k,995) * lu(k,1879)
         lu(k,1912) = lu(k,1912) - lu(k,996) * lu(k,1879)
         lu(k,1976) = lu(k,1976) - lu(k,992) * lu(k,1974)
         lu(k,1978) = lu(k,1978) - lu(k,993) * lu(k,1974)
         lu(k,1987) = lu(k,1987) - lu(k,994) * lu(k,1974)
         lu(k,1990) = lu(k,1990) - lu(k,995) * lu(k,1974)
         lu(k,1996) = lu(k,1996) - lu(k,996) * lu(k,1974)
         lu(k,2092) = lu(k,2092) - lu(k,992) * lu(k,2081)
         lu(k,2098) = lu(k,2098) - lu(k,993) * lu(k,2081)
         lu(k,2106) = lu(k,2106) - lu(k,994) * lu(k,2081)
         lu(k,2109) = lu(k,2109) - lu(k,995) * lu(k,2081)
         lu(k,2115) = lu(k,2115) - lu(k,996) * lu(k,2081)
         lu(k,997) = 1._r8 / lu(k,997)
         lu(k,998) = lu(k,998) * lu(k,997)
         lu(k,999) = lu(k,999) * lu(k,997)
         lu(k,1000) = lu(k,1000) * lu(k,997)
         lu(k,1015) = lu(k,1015) - lu(k,998) * lu(k,1007)
         lu(k,1018) = - lu(k,999) * lu(k,1007)
         lu(k,1021) = lu(k,1021) - lu(k,1000) * lu(k,1007)
         lu(k,1035) = lu(k,1035) - lu(k,998) * lu(k,1029)
         lu(k,1037) = - lu(k,999) * lu(k,1029)
         lu(k,1040) = lu(k,1040) - lu(k,1000) * lu(k,1029)
         lu(k,1054) = lu(k,1054) - lu(k,998) * lu(k,1047)
         lu(k,1057) = - lu(k,999) * lu(k,1047)
         lu(k,1060) = lu(k,1060) - lu(k,1000) * lu(k,1047)
         lu(k,1079) = lu(k,1079) - lu(k,998) * lu(k,1075)
         lu(k,1081) = - lu(k,999) * lu(k,1075)
         lu(k,1083) = lu(k,1083) - lu(k,1000) * lu(k,1075)
         lu(k,1096) = lu(k,1096) - lu(k,998) * lu(k,1090)
         lu(k,1099) = - lu(k,999) * lu(k,1090)
         lu(k,1101) = lu(k,1101) - lu(k,1000) * lu(k,1090)
         lu(k,1131) = lu(k,1131) - lu(k,998) * lu(k,1122)
         lu(k,1134) = - lu(k,999) * lu(k,1122)
         lu(k,1137) = lu(k,1137) - lu(k,1000) * lu(k,1122)
         lu(k,1145) = lu(k,1145) - lu(k,998) * lu(k,1139)
         lu(k,1148) = - lu(k,999) * lu(k,1139)
         lu(k,1149) = lu(k,1149) - lu(k,1000) * lu(k,1139)
         lu(k,1154) = lu(k,1154) - lu(k,998) * lu(k,1151)
         lu(k,1156) = - lu(k,999) * lu(k,1151)
         lu(k,1158) = lu(k,1158) - lu(k,1000) * lu(k,1151)
         lu(k,1179) = lu(k,1179) - lu(k,998) * lu(k,1166)
         lu(k,1183) = - lu(k,999) * lu(k,1166)
         lu(k,1186) = lu(k,1186) - lu(k,1000) * lu(k,1166)
         lu(k,1213) = lu(k,1213) - lu(k,998) * lu(k,1200)
         lu(k,1217) = - lu(k,999) * lu(k,1200)
         lu(k,1220) = lu(k,1220) - lu(k,1000) * lu(k,1200)
         lu(k,1236) = lu(k,1236) - lu(k,998) * lu(k,1227)
         lu(k,1239) = - lu(k,999) * lu(k,1227)
         lu(k,1242) = lu(k,1242) - lu(k,1000) * lu(k,1227)
         lu(k,1257) = lu(k,1257) - lu(k,998) * lu(k,1247)
         lu(k,1261) = - lu(k,999) * lu(k,1247)
         lu(k,1264) = lu(k,1264) - lu(k,1000) * lu(k,1247)
         lu(k,1306) = lu(k,1306) - lu(k,998) * lu(k,1292)
         lu(k,1310) = - lu(k,999) * lu(k,1292)
         lu(k,1313) = lu(k,1313) - lu(k,1000) * lu(k,1292)
         lu(k,1355) = lu(k,1355) - lu(k,998) * lu(k,1351)
         lu(k,1359) = lu(k,1359) - lu(k,999) * lu(k,1351)
         lu(k,1361) = lu(k,1361) - lu(k,1000) * lu(k,1351)
         lu(k,1400) = lu(k,1400) - lu(k,998) * lu(k,1380)
         lu(k,1404) = lu(k,1404) - lu(k,999) * lu(k,1380)
         lu(k,1407) = lu(k,1407) - lu(k,1000) * lu(k,1380)
         lu(k,1431) = lu(k,1431) - lu(k,998) * lu(k,1424)
         lu(k,1435) = lu(k,1435) - lu(k,999) * lu(k,1424)
         lu(k,1438) = lu(k,1438) - lu(k,1000) * lu(k,1424)
         lu(k,1510) = lu(k,1510) - lu(k,998) * lu(k,1488)
         lu(k,1515) = lu(k,1515) - lu(k,999) * lu(k,1488)
         lu(k,1519) = lu(k,1519) - lu(k,1000) * lu(k,1488)
         lu(k,1545) = lu(k,1545) - lu(k,998) * lu(k,1534)
         lu(k,1550) = lu(k,1550) - lu(k,999) * lu(k,1534)
         lu(k,1554) = lu(k,1554) - lu(k,1000) * lu(k,1534)
         lu(k,1719) = lu(k,1719) - lu(k,998) * lu(k,1694)
         lu(k,1724) = lu(k,1724) - lu(k,999) * lu(k,1694)
         lu(k,1728) = lu(k,1728) - lu(k,1000) * lu(k,1694)
         lu(k,1781) = lu(k,1781) - lu(k,998) * lu(k,1759)
         lu(k,1786) = lu(k,1786) - lu(k,999) * lu(k,1759)
         lu(k,1790) = lu(k,1790) - lu(k,1000) * lu(k,1759)
         lu(k,1822) = lu(k,1822) - lu(k,998) * lu(k,1812)
         lu(k,1827) = lu(k,1827) - lu(k,999) * lu(k,1812)
         lu(k,1831) = lu(k,1831) - lu(k,1000) * lu(k,1812)
         lu(k,1846) = lu(k,1846) - lu(k,998) * lu(k,1837)
         lu(k,1851) = lu(k,1851) - lu(k,999) * lu(k,1837)
         lu(k,1855) = lu(k,1855) - lu(k,1000) * lu(k,1837)
         lu(k,1903) = lu(k,1903) - lu(k,998) * lu(k,1880)
         lu(k,1908) = - lu(k,999) * lu(k,1880)
         lu(k,1912) = lu(k,1912) - lu(k,1000) * lu(k,1880)
         lu(k,1987) = lu(k,1987) - lu(k,998) * lu(k,1975)
         lu(k,1992) = lu(k,1992) - lu(k,999) * lu(k,1975)
         lu(k,1996) = lu(k,1996) - lu(k,1000) * lu(k,1975)
         lu(k,2106) = lu(k,2106) - lu(k,998) * lu(k,2082)
         lu(k,2111) = lu(k,2111) - lu(k,999) * lu(k,2082)
         lu(k,2115) = lu(k,2115) - lu(k,1000) * lu(k,2082)
      end do
      end subroutine lu_fac21
      subroutine lu_fac22( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1008) = 1._r8 / lu(k,1008)
         lu(k,1009) = lu(k,1009) * lu(k,1008)
         lu(k,1010) = lu(k,1010) * lu(k,1008)
         lu(k,1011) = lu(k,1011) * lu(k,1008)
         lu(k,1012) = lu(k,1012) * lu(k,1008)
         lu(k,1013) = lu(k,1013) * lu(k,1008)
         lu(k,1014) = lu(k,1014) * lu(k,1008)
         lu(k,1015) = lu(k,1015) * lu(k,1008)
         lu(k,1016) = lu(k,1016) * lu(k,1008)
         lu(k,1017) = lu(k,1017) * lu(k,1008)
         lu(k,1018) = lu(k,1018) * lu(k,1008)
         lu(k,1019) = lu(k,1019) * lu(k,1008)
         lu(k,1020) = lu(k,1020) * lu(k,1008)
         lu(k,1021) = lu(k,1021) * lu(k,1008)
         lu(k,1022) = lu(k,1022) * lu(k,1008)
         lu(k,1382) = lu(k,1382) - lu(k,1009) * lu(k,1381)
         lu(k,1383) = lu(k,1383) - lu(k,1010) * lu(k,1381)
         lu(k,1384) = lu(k,1384) - lu(k,1011) * lu(k,1381)
         lu(k,1395) = lu(k,1395) - lu(k,1012) * lu(k,1381)
         lu(k,1396) = lu(k,1396) - lu(k,1013) * lu(k,1381)
         lu(k,1398) = lu(k,1398) - lu(k,1014) * lu(k,1381)
         lu(k,1400) = lu(k,1400) - lu(k,1015) * lu(k,1381)
         lu(k,1402) = lu(k,1402) - lu(k,1016) * lu(k,1381)
         lu(k,1403) = lu(k,1403) - lu(k,1017) * lu(k,1381)
         lu(k,1404) = lu(k,1404) - lu(k,1018) * lu(k,1381)
         lu(k,1405) = lu(k,1405) - lu(k,1019) * lu(k,1381)
         lu(k,1406) = lu(k,1406) - lu(k,1020) * lu(k,1381)
         lu(k,1407) = lu(k,1407) - lu(k,1021) * lu(k,1381)
         lu(k,1409) = lu(k,1409) - lu(k,1022) * lu(k,1381)
         lu(k,1490) = lu(k,1490) - lu(k,1009) * lu(k,1489)
         lu(k,1491) = lu(k,1491) - lu(k,1010) * lu(k,1489)
         lu(k,1492) = lu(k,1492) - lu(k,1011) * lu(k,1489)
         lu(k,1503) = lu(k,1503) - lu(k,1012) * lu(k,1489)
         lu(k,1505) = lu(k,1505) - lu(k,1013) * lu(k,1489)
         lu(k,1507) = lu(k,1507) - lu(k,1014) * lu(k,1489)
         lu(k,1510) = lu(k,1510) - lu(k,1015) * lu(k,1489)
         lu(k,1513) = lu(k,1513) - lu(k,1016) * lu(k,1489)
         lu(k,1514) = lu(k,1514) - lu(k,1017) * lu(k,1489)
         lu(k,1515) = lu(k,1515) - lu(k,1018) * lu(k,1489)
         lu(k,1516) = lu(k,1516) - lu(k,1019) * lu(k,1489)
         lu(k,1517) = lu(k,1517) - lu(k,1020) * lu(k,1489)
         lu(k,1519) = lu(k,1519) - lu(k,1021) * lu(k,1489)
         lu(k,1521) = lu(k,1521) - lu(k,1022) * lu(k,1489)
         lu(k,1696) = lu(k,1696) - lu(k,1009) * lu(k,1695)
         lu(k,1697) = lu(k,1697) - lu(k,1010) * lu(k,1695)
         lu(k,1698) = lu(k,1698) - lu(k,1011) * lu(k,1695)
         lu(k,1710) = lu(k,1710) - lu(k,1012) * lu(k,1695)
         lu(k,1714) = lu(k,1714) - lu(k,1013) * lu(k,1695)
         lu(k,1716) = lu(k,1716) - lu(k,1014) * lu(k,1695)
         lu(k,1719) = lu(k,1719) - lu(k,1015) * lu(k,1695)
         lu(k,1722) = lu(k,1722) - lu(k,1016) * lu(k,1695)
         lu(k,1723) = lu(k,1723) - lu(k,1017) * lu(k,1695)
         lu(k,1724) = lu(k,1724) - lu(k,1018) * lu(k,1695)
         lu(k,1725) = lu(k,1725) - lu(k,1019) * lu(k,1695)
         lu(k,1726) = lu(k,1726) - lu(k,1020) * lu(k,1695)
         lu(k,1728) = lu(k,1728) - lu(k,1021) * lu(k,1695)
         lu(k,1730) = lu(k,1730) - lu(k,1022) * lu(k,1695)
         lu(k,1761) = lu(k,1761) - lu(k,1009) * lu(k,1760)
         lu(k,1762) = lu(k,1762) - lu(k,1010) * lu(k,1760)
         lu(k,1763) = lu(k,1763) - lu(k,1011) * lu(k,1760)
         lu(k,1773) = lu(k,1773) - lu(k,1012) * lu(k,1760)
         lu(k,1776) = lu(k,1776) - lu(k,1013) * lu(k,1760)
         lu(k,1778) = lu(k,1778) - lu(k,1014) * lu(k,1760)
         lu(k,1781) = lu(k,1781) - lu(k,1015) * lu(k,1760)
         lu(k,1784) = lu(k,1784) - lu(k,1016) * lu(k,1760)
         lu(k,1785) = lu(k,1785) - lu(k,1017) * lu(k,1760)
         lu(k,1786) = lu(k,1786) - lu(k,1018) * lu(k,1760)
         lu(k,1787) = - lu(k,1019) * lu(k,1760)
         lu(k,1788) = lu(k,1788) - lu(k,1020) * lu(k,1760)
         lu(k,1790) = lu(k,1790) - lu(k,1021) * lu(k,1760)
         lu(k,1792) = lu(k,1792) - lu(k,1022) * lu(k,1760)
         lu(k,1882) = lu(k,1882) - lu(k,1009) * lu(k,1881)
         lu(k,1883) = lu(k,1883) - lu(k,1010) * lu(k,1881)
         lu(k,1884) = lu(k,1884) - lu(k,1011) * lu(k,1881)
         lu(k,1895) = lu(k,1895) - lu(k,1012) * lu(k,1881)
         lu(k,1898) = lu(k,1898) - lu(k,1013) * lu(k,1881)
         lu(k,1900) = lu(k,1900) - lu(k,1014) * lu(k,1881)
         lu(k,1903) = lu(k,1903) - lu(k,1015) * lu(k,1881)
         lu(k,1906) = lu(k,1906) - lu(k,1016) * lu(k,1881)
         lu(k,1907) = lu(k,1907) - lu(k,1017) * lu(k,1881)
         lu(k,1908) = lu(k,1908) - lu(k,1018) * lu(k,1881)
         lu(k,1909) = lu(k,1909) - lu(k,1019) * lu(k,1881)
         lu(k,1910) = lu(k,1910) - lu(k,1020) * lu(k,1881)
         lu(k,1912) = lu(k,1912) - lu(k,1021) * lu(k,1881)
         lu(k,1914) = lu(k,1914) - lu(k,1022) * lu(k,1881)
         lu(k,2084) = lu(k,2084) - lu(k,1009) * lu(k,2083)
         lu(k,2085) = lu(k,2085) - lu(k,1010) * lu(k,2083)
         lu(k,2086) = lu(k,2086) - lu(k,1011) * lu(k,2083)
         lu(k,2098) = lu(k,2098) - lu(k,1012) * lu(k,2083)
         lu(k,2101) = lu(k,2101) - lu(k,1013) * lu(k,2083)
         lu(k,2103) = lu(k,2103) - lu(k,1014) * lu(k,2083)
         lu(k,2106) = lu(k,2106) - lu(k,1015) * lu(k,2083)
         lu(k,2109) = lu(k,2109) - lu(k,1016) * lu(k,2083)
         lu(k,2110) = lu(k,2110) - lu(k,1017) * lu(k,2083)
         lu(k,2111) = lu(k,2111) - lu(k,1018) * lu(k,2083)
         lu(k,2112) = lu(k,2112) - lu(k,1019) * lu(k,2083)
         lu(k,2113) = lu(k,2113) - lu(k,1020) * lu(k,2083)
         lu(k,2115) = lu(k,2115) - lu(k,1021) * lu(k,2083)
         lu(k,2117) = lu(k,2117) - lu(k,1022) * lu(k,2083)
         lu(k,1030) = 1._r8 / lu(k,1030)
         lu(k,1031) = lu(k,1031) * lu(k,1030)
         lu(k,1032) = lu(k,1032) * lu(k,1030)
         lu(k,1033) = lu(k,1033) * lu(k,1030)
         lu(k,1034) = lu(k,1034) * lu(k,1030)
         lu(k,1035) = lu(k,1035) * lu(k,1030)
         lu(k,1036) = lu(k,1036) * lu(k,1030)
         lu(k,1037) = lu(k,1037) * lu(k,1030)
         lu(k,1038) = lu(k,1038) * lu(k,1030)
         lu(k,1039) = lu(k,1039) * lu(k,1030)
         lu(k,1040) = lu(k,1040) * lu(k,1030)
         lu(k,1041) = lu(k,1041) * lu(k,1030)
         lu(k,1050) = lu(k,1050) - lu(k,1031) * lu(k,1048)
         lu(k,1051) = lu(k,1051) - lu(k,1032) * lu(k,1048)
         lu(k,1052) = lu(k,1052) - lu(k,1033) * lu(k,1048)
         lu(k,1053) = lu(k,1053) - lu(k,1034) * lu(k,1048)
         lu(k,1054) = lu(k,1054) - lu(k,1035) * lu(k,1048)
         lu(k,1055) = lu(k,1055) - lu(k,1036) * lu(k,1048)
         lu(k,1057) = lu(k,1057) - lu(k,1037) * lu(k,1048)
         lu(k,1058) = lu(k,1058) - lu(k,1038) * lu(k,1048)
         lu(k,1059) = lu(k,1059) - lu(k,1039) * lu(k,1048)
         lu(k,1060) = lu(k,1060) - lu(k,1040) * lu(k,1048)
         lu(k,1061) = lu(k,1061) - lu(k,1041) * lu(k,1048)
         lu(k,1384) = lu(k,1384) - lu(k,1031) * lu(k,1382)
         lu(k,1395) = lu(k,1395) - lu(k,1032) * lu(k,1382)
         lu(k,1396) = lu(k,1396) - lu(k,1033) * lu(k,1382)
         lu(k,1398) = lu(k,1398) - lu(k,1034) * lu(k,1382)
         lu(k,1400) = lu(k,1400) - lu(k,1035) * lu(k,1382)
         lu(k,1402) = lu(k,1402) - lu(k,1036) * lu(k,1382)
         lu(k,1404) = lu(k,1404) - lu(k,1037) * lu(k,1382)
         lu(k,1405) = lu(k,1405) - lu(k,1038) * lu(k,1382)
         lu(k,1406) = lu(k,1406) - lu(k,1039) * lu(k,1382)
         lu(k,1407) = lu(k,1407) - lu(k,1040) * lu(k,1382)
         lu(k,1409) = lu(k,1409) - lu(k,1041) * lu(k,1382)
         lu(k,1492) = lu(k,1492) - lu(k,1031) * lu(k,1490)
         lu(k,1503) = lu(k,1503) - lu(k,1032) * lu(k,1490)
         lu(k,1505) = lu(k,1505) - lu(k,1033) * lu(k,1490)
         lu(k,1507) = lu(k,1507) - lu(k,1034) * lu(k,1490)
         lu(k,1510) = lu(k,1510) - lu(k,1035) * lu(k,1490)
         lu(k,1513) = lu(k,1513) - lu(k,1036) * lu(k,1490)
         lu(k,1515) = lu(k,1515) - lu(k,1037) * lu(k,1490)
         lu(k,1516) = lu(k,1516) - lu(k,1038) * lu(k,1490)
         lu(k,1517) = lu(k,1517) - lu(k,1039) * lu(k,1490)
         lu(k,1519) = lu(k,1519) - lu(k,1040) * lu(k,1490)
         lu(k,1521) = lu(k,1521) - lu(k,1041) * lu(k,1490)
         lu(k,1698) = lu(k,1698) - lu(k,1031) * lu(k,1696)
         lu(k,1710) = lu(k,1710) - lu(k,1032) * lu(k,1696)
         lu(k,1714) = lu(k,1714) - lu(k,1033) * lu(k,1696)
         lu(k,1716) = lu(k,1716) - lu(k,1034) * lu(k,1696)
         lu(k,1719) = lu(k,1719) - lu(k,1035) * lu(k,1696)
         lu(k,1722) = lu(k,1722) - lu(k,1036) * lu(k,1696)
         lu(k,1724) = lu(k,1724) - lu(k,1037) * lu(k,1696)
         lu(k,1725) = lu(k,1725) - lu(k,1038) * lu(k,1696)
         lu(k,1726) = lu(k,1726) - lu(k,1039) * lu(k,1696)
         lu(k,1728) = lu(k,1728) - lu(k,1040) * lu(k,1696)
         lu(k,1730) = lu(k,1730) - lu(k,1041) * lu(k,1696)
         lu(k,1763) = lu(k,1763) - lu(k,1031) * lu(k,1761)
         lu(k,1773) = lu(k,1773) - lu(k,1032) * lu(k,1761)
         lu(k,1776) = lu(k,1776) - lu(k,1033) * lu(k,1761)
         lu(k,1778) = lu(k,1778) - lu(k,1034) * lu(k,1761)
         lu(k,1781) = lu(k,1781) - lu(k,1035) * lu(k,1761)
         lu(k,1784) = lu(k,1784) - lu(k,1036) * lu(k,1761)
         lu(k,1786) = lu(k,1786) - lu(k,1037) * lu(k,1761)
         lu(k,1787) = lu(k,1787) - lu(k,1038) * lu(k,1761)
         lu(k,1788) = lu(k,1788) - lu(k,1039) * lu(k,1761)
         lu(k,1790) = lu(k,1790) - lu(k,1040) * lu(k,1761)
         lu(k,1792) = lu(k,1792) - lu(k,1041) * lu(k,1761)
         lu(k,1884) = lu(k,1884) - lu(k,1031) * lu(k,1882)
         lu(k,1895) = lu(k,1895) - lu(k,1032) * lu(k,1882)
         lu(k,1898) = lu(k,1898) - lu(k,1033) * lu(k,1882)
         lu(k,1900) = lu(k,1900) - lu(k,1034) * lu(k,1882)
         lu(k,1903) = lu(k,1903) - lu(k,1035) * lu(k,1882)
         lu(k,1906) = lu(k,1906) - lu(k,1036) * lu(k,1882)
         lu(k,1908) = lu(k,1908) - lu(k,1037) * lu(k,1882)
         lu(k,1909) = lu(k,1909) - lu(k,1038) * lu(k,1882)
         lu(k,1910) = lu(k,1910) - lu(k,1039) * lu(k,1882)
         lu(k,1912) = lu(k,1912) - lu(k,1040) * lu(k,1882)
         lu(k,1914) = lu(k,1914) - lu(k,1041) * lu(k,1882)
         lu(k,2086) = lu(k,2086) - lu(k,1031) * lu(k,2084)
         lu(k,2098) = lu(k,2098) - lu(k,1032) * lu(k,2084)
         lu(k,2101) = lu(k,2101) - lu(k,1033) * lu(k,2084)
         lu(k,2103) = lu(k,2103) - lu(k,1034) * lu(k,2084)
         lu(k,2106) = lu(k,2106) - lu(k,1035) * lu(k,2084)
         lu(k,2109) = lu(k,2109) - lu(k,1036) * lu(k,2084)
         lu(k,2111) = lu(k,2111) - lu(k,1037) * lu(k,2084)
         lu(k,2112) = lu(k,2112) - lu(k,1038) * lu(k,2084)
         lu(k,2113) = lu(k,2113) - lu(k,1039) * lu(k,2084)
         lu(k,2115) = lu(k,2115) - lu(k,1040) * lu(k,2084)
         lu(k,2117) = lu(k,2117) - lu(k,1041) * lu(k,2084)
         lu(k,1049) = 1._r8 / lu(k,1049)
         lu(k,1050) = lu(k,1050) * lu(k,1049)
         lu(k,1051) = lu(k,1051) * lu(k,1049)
         lu(k,1052) = lu(k,1052) * lu(k,1049)
         lu(k,1053) = lu(k,1053) * lu(k,1049)
         lu(k,1054) = lu(k,1054) * lu(k,1049)
         lu(k,1055) = lu(k,1055) * lu(k,1049)
         lu(k,1056) = lu(k,1056) * lu(k,1049)
         lu(k,1057) = lu(k,1057) * lu(k,1049)
         lu(k,1058) = lu(k,1058) * lu(k,1049)
         lu(k,1059) = lu(k,1059) * lu(k,1049)
         lu(k,1060) = lu(k,1060) * lu(k,1049)
         lu(k,1061) = lu(k,1061) * lu(k,1049)
         lu(k,1384) = lu(k,1384) - lu(k,1050) * lu(k,1383)
         lu(k,1395) = lu(k,1395) - lu(k,1051) * lu(k,1383)
         lu(k,1396) = lu(k,1396) - lu(k,1052) * lu(k,1383)
         lu(k,1398) = lu(k,1398) - lu(k,1053) * lu(k,1383)
         lu(k,1400) = lu(k,1400) - lu(k,1054) * lu(k,1383)
         lu(k,1402) = lu(k,1402) - lu(k,1055) * lu(k,1383)
         lu(k,1403) = lu(k,1403) - lu(k,1056) * lu(k,1383)
         lu(k,1404) = lu(k,1404) - lu(k,1057) * lu(k,1383)
         lu(k,1405) = lu(k,1405) - lu(k,1058) * lu(k,1383)
         lu(k,1406) = lu(k,1406) - lu(k,1059) * lu(k,1383)
         lu(k,1407) = lu(k,1407) - lu(k,1060) * lu(k,1383)
         lu(k,1409) = lu(k,1409) - lu(k,1061) * lu(k,1383)
         lu(k,1492) = lu(k,1492) - lu(k,1050) * lu(k,1491)
         lu(k,1503) = lu(k,1503) - lu(k,1051) * lu(k,1491)
         lu(k,1505) = lu(k,1505) - lu(k,1052) * lu(k,1491)
         lu(k,1507) = lu(k,1507) - lu(k,1053) * lu(k,1491)
         lu(k,1510) = lu(k,1510) - lu(k,1054) * lu(k,1491)
         lu(k,1513) = lu(k,1513) - lu(k,1055) * lu(k,1491)
         lu(k,1514) = lu(k,1514) - lu(k,1056) * lu(k,1491)
         lu(k,1515) = lu(k,1515) - lu(k,1057) * lu(k,1491)
         lu(k,1516) = lu(k,1516) - lu(k,1058) * lu(k,1491)
         lu(k,1517) = lu(k,1517) - lu(k,1059) * lu(k,1491)
         lu(k,1519) = lu(k,1519) - lu(k,1060) * lu(k,1491)
         lu(k,1521) = lu(k,1521) - lu(k,1061) * lu(k,1491)
         lu(k,1698) = lu(k,1698) - lu(k,1050) * lu(k,1697)
         lu(k,1710) = lu(k,1710) - lu(k,1051) * lu(k,1697)
         lu(k,1714) = lu(k,1714) - lu(k,1052) * lu(k,1697)
         lu(k,1716) = lu(k,1716) - lu(k,1053) * lu(k,1697)
         lu(k,1719) = lu(k,1719) - lu(k,1054) * lu(k,1697)
         lu(k,1722) = lu(k,1722) - lu(k,1055) * lu(k,1697)
         lu(k,1723) = lu(k,1723) - lu(k,1056) * lu(k,1697)
         lu(k,1724) = lu(k,1724) - lu(k,1057) * lu(k,1697)
         lu(k,1725) = lu(k,1725) - lu(k,1058) * lu(k,1697)
         lu(k,1726) = lu(k,1726) - lu(k,1059) * lu(k,1697)
         lu(k,1728) = lu(k,1728) - lu(k,1060) * lu(k,1697)
         lu(k,1730) = lu(k,1730) - lu(k,1061) * lu(k,1697)
         lu(k,1763) = lu(k,1763) - lu(k,1050) * lu(k,1762)
         lu(k,1773) = lu(k,1773) - lu(k,1051) * lu(k,1762)
         lu(k,1776) = lu(k,1776) - lu(k,1052) * lu(k,1762)
         lu(k,1778) = lu(k,1778) - lu(k,1053) * lu(k,1762)
         lu(k,1781) = lu(k,1781) - lu(k,1054) * lu(k,1762)
         lu(k,1784) = lu(k,1784) - lu(k,1055) * lu(k,1762)
         lu(k,1785) = lu(k,1785) - lu(k,1056) * lu(k,1762)
         lu(k,1786) = lu(k,1786) - lu(k,1057) * lu(k,1762)
         lu(k,1787) = lu(k,1787) - lu(k,1058) * lu(k,1762)
         lu(k,1788) = lu(k,1788) - lu(k,1059) * lu(k,1762)
         lu(k,1790) = lu(k,1790) - lu(k,1060) * lu(k,1762)
         lu(k,1792) = lu(k,1792) - lu(k,1061) * lu(k,1762)
         lu(k,1884) = lu(k,1884) - lu(k,1050) * lu(k,1883)
         lu(k,1895) = lu(k,1895) - lu(k,1051) * lu(k,1883)
         lu(k,1898) = lu(k,1898) - lu(k,1052) * lu(k,1883)
         lu(k,1900) = lu(k,1900) - lu(k,1053) * lu(k,1883)
         lu(k,1903) = lu(k,1903) - lu(k,1054) * lu(k,1883)
         lu(k,1906) = lu(k,1906) - lu(k,1055) * lu(k,1883)
         lu(k,1907) = lu(k,1907) - lu(k,1056) * lu(k,1883)
         lu(k,1908) = lu(k,1908) - lu(k,1057) * lu(k,1883)
         lu(k,1909) = lu(k,1909) - lu(k,1058) * lu(k,1883)
         lu(k,1910) = lu(k,1910) - lu(k,1059) * lu(k,1883)
         lu(k,1912) = lu(k,1912) - lu(k,1060) * lu(k,1883)
         lu(k,1914) = lu(k,1914) - lu(k,1061) * lu(k,1883)
         lu(k,2086) = lu(k,2086) - lu(k,1050) * lu(k,2085)
         lu(k,2098) = lu(k,2098) - lu(k,1051) * lu(k,2085)
         lu(k,2101) = lu(k,2101) - lu(k,1052) * lu(k,2085)
         lu(k,2103) = lu(k,2103) - lu(k,1053) * lu(k,2085)
         lu(k,2106) = lu(k,2106) - lu(k,1054) * lu(k,2085)
         lu(k,2109) = lu(k,2109) - lu(k,1055) * lu(k,2085)
         lu(k,2110) = lu(k,2110) - lu(k,1056) * lu(k,2085)
         lu(k,2111) = lu(k,2111) - lu(k,1057) * lu(k,2085)
         lu(k,2112) = lu(k,2112) - lu(k,1058) * lu(k,2085)
         lu(k,2113) = lu(k,2113) - lu(k,1059) * lu(k,2085)
         lu(k,2115) = lu(k,2115) - lu(k,1060) * lu(k,2085)
         lu(k,2117) = lu(k,2117) - lu(k,1061) * lu(k,2085)
         lu(k,1065) = 1._r8 / lu(k,1065)
         lu(k,1066) = lu(k,1066) * lu(k,1065)
         lu(k,1067) = lu(k,1067) * lu(k,1065)
         lu(k,1068) = lu(k,1068) * lu(k,1065)
         lu(k,1069) = lu(k,1069) * lu(k,1065)
         lu(k,1070) = lu(k,1070) * lu(k,1065)
         lu(k,1071) = lu(k,1071) * lu(k,1065)
         lu(k,1072) = lu(k,1072) * lu(k,1065)
         lu(k,1073) = lu(k,1073) * lu(k,1065)
         lu(k,1074) = lu(k,1074) * lu(k,1065)
         lu(k,1171) = lu(k,1171) - lu(k,1066) * lu(k,1167)
         lu(k,1176) = lu(k,1176) - lu(k,1067) * lu(k,1167)
         lu(k,1177) = lu(k,1177) - lu(k,1068) * lu(k,1167)
         lu(k,1178) = lu(k,1178) - lu(k,1069) * lu(k,1167)
         lu(k,1179) = lu(k,1179) - lu(k,1070) * lu(k,1167)
         lu(k,1181) = lu(k,1181) - lu(k,1071) * lu(k,1167)
         lu(k,1185) = lu(k,1185) - lu(k,1072) * lu(k,1167)
         lu(k,1186) = lu(k,1186) - lu(k,1073) * lu(k,1167)
         lu(k,1187) = lu(k,1187) - lu(k,1074) * lu(k,1167)
         lu(k,1205) = lu(k,1205) - lu(k,1066) * lu(k,1201)
         lu(k,1210) = lu(k,1210) - lu(k,1067) * lu(k,1201)
         lu(k,1211) = lu(k,1211) - lu(k,1068) * lu(k,1201)
         lu(k,1212) = lu(k,1212) - lu(k,1069) * lu(k,1201)
         lu(k,1213) = lu(k,1213) - lu(k,1070) * lu(k,1201)
         lu(k,1215) = lu(k,1215) - lu(k,1071) * lu(k,1201)
         lu(k,1219) = lu(k,1219) - lu(k,1072) * lu(k,1201)
         lu(k,1220) = lu(k,1220) - lu(k,1073) * lu(k,1201)
         lu(k,1221) = lu(k,1221) - lu(k,1074) * lu(k,1201)
         lu(k,1230) = lu(k,1230) - lu(k,1066) * lu(k,1228)
         lu(k,1233) = lu(k,1233) - lu(k,1067) * lu(k,1228)
         lu(k,1234) = lu(k,1234) - lu(k,1068) * lu(k,1228)
         lu(k,1235) = lu(k,1235) - lu(k,1069) * lu(k,1228)
         lu(k,1236) = lu(k,1236) - lu(k,1070) * lu(k,1228)
         lu(k,1237) = lu(k,1237) - lu(k,1071) * lu(k,1228)
         lu(k,1241) = lu(k,1241) - lu(k,1072) * lu(k,1228)
         lu(k,1242) = lu(k,1242) - lu(k,1073) * lu(k,1228)
         lu(k,1243) = lu(k,1243) - lu(k,1074) * lu(k,1228)
         lu(k,1389) = lu(k,1389) - lu(k,1066) * lu(k,1384)
         lu(k,1395) = lu(k,1395) - lu(k,1067) * lu(k,1384)
         lu(k,1396) = lu(k,1396) - lu(k,1068) * lu(k,1384)
         lu(k,1398) = lu(k,1398) - lu(k,1069) * lu(k,1384)
         lu(k,1400) = lu(k,1400) - lu(k,1070) * lu(k,1384)
         lu(k,1402) = lu(k,1402) - lu(k,1071) * lu(k,1384)
         lu(k,1406) = lu(k,1406) - lu(k,1072) * lu(k,1384)
         lu(k,1407) = lu(k,1407) - lu(k,1073) * lu(k,1384)
         lu(k,1409) = lu(k,1409) - lu(k,1074) * lu(k,1384)
         lu(k,1497) = lu(k,1497) - lu(k,1066) * lu(k,1492)
         lu(k,1503) = lu(k,1503) - lu(k,1067) * lu(k,1492)
         lu(k,1505) = lu(k,1505) - lu(k,1068) * lu(k,1492)
         lu(k,1507) = lu(k,1507) - lu(k,1069) * lu(k,1492)
         lu(k,1510) = lu(k,1510) - lu(k,1070) * lu(k,1492)
         lu(k,1513) = lu(k,1513) - lu(k,1071) * lu(k,1492)
         lu(k,1517) = lu(k,1517) - lu(k,1072) * lu(k,1492)
         lu(k,1519) = lu(k,1519) - lu(k,1073) * lu(k,1492)
         lu(k,1521) = lu(k,1521) - lu(k,1074) * lu(k,1492)
         lu(k,1704) = lu(k,1704) - lu(k,1066) * lu(k,1698)
         lu(k,1710) = lu(k,1710) - lu(k,1067) * lu(k,1698)
         lu(k,1714) = lu(k,1714) - lu(k,1068) * lu(k,1698)
         lu(k,1716) = lu(k,1716) - lu(k,1069) * lu(k,1698)
         lu(k,1719) = lu(k,1719) - lu(k,1070) * lu(k,1698)
         lu(k,1722) = lu(k,1722) - lu(k,1071) * lu(k,1698)
         lu(k,1726) = lu(k,1726) - lu(k,1072) * lu(k,1698)
         lu(k,1728) = lu(k,1728) - lu(k,1073) * lu(k,1698)
         lu(k,1730) = lu(k,1730) - lu(k,1074) * lu(k,1698)
         lu(k,1767) = lu(k,1767) - lu(k,1066) * lu(k,1763)
         lu(k,1773) = lu(k,1773) - lu(k,1067) * lu(k,1763)
         lu(k,1776) = lu(k,1776) - lu(k,1068) * lu(k,1763)
         lu(k,1778) = lu(k,1778) - lu(k,1069) * lu(k,1763)
         lu(k,1781) = lu(k,1781) - lu(k,1070) * lu(k,1763)
         lu(k,1784) = lu(k,1784) - lu(k,1071) * lu(k,1763)
         lu(k,1788) = lu(k,1788) - lu(k,1072) * lu(k,1763)
         lu(k,1790) = lu(k,1790) - lu(k,1073) * lu(k,1763)
         lu(k,1792) = lu(k,1792) - lu(k,1074) * lu(k,1763)
         lu(k,1889) = lu(k,1889) - lu(k,1066) * lu(k,1884)
         lu(k,1895) = lu(k,1895) - lu(k,1067) * lu(k,1884)
         lu(k,1898) = lu(k,1898) - lu(k,1068) * lu(k,1884)
         lu(k,1900) = lu(k,1900) - lu(k,1069) * lu(k,1884)
         lu(k,1903) = lu(k,1903) - lu(k,1070) * lu(k,1884)
         lu(k,1906) = lu(k,1906) - lu(k,1071) * lu(k,1884)
         lu(k,1910) = lu(k,1910) - lu(k,1072) * lu(k,1884)
         lu(k,1912) = lu(k,1912) - lu(k,1073) * lu(k,1884)
         lu(k,1914) = lu(k,1914) - lu(k,1074) * lu(k,1884)
         lu(k,2092) = lu(k,2092) - lu(k,1066) * lu(k,2086)
         lu(k,2098) = lu(k,2098) - lu(k,1067) * lu(k,2086)
         lu(k,2101) = lu(k,2101) - lu(k,1068) * lu(k,2086)
         lu(k,2103) = lu(k,2103) - lu(k,1069) * lu(k,2086)
         lu(k,2106) = lu(k,2106) - lu(k,1070) * lu(k,2086)
         lu(k,2109) = lu(k,2109) - lu(k,1071) * lu(k,2086)
         lu(k,2113) = lu(k,2113) - lu(k,1072) * lu(k,2086)
         lu(k,2115) = lu(k,2115) - lu(k,1073) * lu(k,2086)
         lu(k,2117) = lu(k,2117) - lu(k,1074) * lu(k,2086)
      end do
      end subroutine lu_fac22
      subroutine lu_fac23( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1076) = 1._r8 / lu(k,1076)
         lu(k,1077) = lu(k,1077) * lu(k,1076)
         lu(k,1078) = lu(k,1078) * lu(k,1076)
         lu(k,1079) = lu(k,1079) * lu(k,1076)
         lu(k,1080) = lu(k,1080) * lu(k,1076)
         lu(k,1081) = lu(k,1081) * lu(k,1076)
         lu(k,1082) = lu(k,1082) * lu(k,1076)
         lu(k,1083) = lu(k,1083) * lu(k,1076)
         lu(k,1084) = lu(k,1084) * lu(k,1076)
         lu(k,1176) = lu(k,1176) - lu(k,1077) * lu(k,1168)
         lu(k,1177) = lu(k,1177) - lu(k,1078) * lu(k,1168)
         lu(k,1179) = lu(k,1179) - lu(k,1079) * lu(k,1168)
         lu(k,1182) = lu(k,1182) - lu(k,1080) * lu(k,1168)
         lu(k,1183) = lu(k,1183) - lu(k,1081) * lu(k,1168)
         lu(k,1184) = lu(k,1184) - lu(k,1082) * lu(k,1168)
         lu(k,1186) = lu(k,1186) - lu(k,1083) * lu(k,1168)
         lu(k,1187) = lu(k,1187) - lu(k,1084) * lu(k,1168)
         lu(k,1210) = lu(k,1210) - lu(k,1077) * lu(k,1202)
         lu(k,1211) = lu(k,1211) - lu(k,1078) * lu(k,1202)
         lu(k,1213) = lu(k,1213) - lu(k,1079) * lu(k,1202)
         lu(k,1216) = lu(k,1216) - lu(k,1080) * lu(k,1202)
         lu(k,1217) = lu(k,1217) - lu(k,1081) * lu(k,1202)
         lu(k,1218) = lu(k,1218) - lu(k,1082) * lu(k,1202)
         lu(k,1220) = lu(k,1220) - lu(k,1083) * lu(k,1202)
         lu(k,1221) = lu(k,1221) - lu(k,1084) * lu(k,1202)
         lu(k,1233) = lu(k,1233) - lu(k,1077) * lu(k,1229)
         lu(k,1234) = lu(k,1234) - lu(k,1078) * lu(k,1229)
         lu(k,1236) = lu(k,1236) - lu(k,1079) * lu(k,1229)
         lu(k,1238) = lu(k,1238) - lu(k,1080) * lu(k,1229)
         lu(k,1239) = lu(k,1239) - lu(k,1081) * lu(k,1229)
         lu(k,1240) = lu(k,1240) - lu(k,1082) * lu(k,1229)
         lu(k,1242) = lu(k,1242) - lu(k,1083) * lu(k,1229)
         lu(k,1243) = lu(k,1243) - lu(k,1084) * lu(k,1229)
         lu(k,1253) = lu(k,1253) - lu(k,1077) * lu(k,1248)
         lu(k,1254) = lu(k,1254) - lu(k,1078) * lu(k,1248)
         lu(k,1257) = lu(k,1257) - lu(k,1079) * lu(k,1248)
         lu(k,1260) = lu(k,1260) - lu(k,1080) * lu(k,1248)
         lu(k,1261) = lu(k,1261) - lu(k,1081) * lu(k,1248)
         lu(k,1262) = - lu(k,1082) * lu(k,1248)
         lu(k,1264) = lu(k,1264) - lu(k,1083) * lu(k,1248)
         lu(k,1265) = lu(k,1265) - lu(k,1084) * lu(k,1248)
         lu(k,1395) = lu(k,1395) - lu(k,1077) * lu(k,1385)
         lu(k,1396) = lu(k,1396) - lu(k,1078) * lu(k,1385)
         lu(k,1400) = lu(k,1400) - lu(k,1079) * lu(k,1385)
         lu(k,1403) = lu(k,1403) - lu(k,1080) * lu(k,1385)
         lu(k,1404) = lu(k,1404) - lu(k,1081) * lu(k,1385)
         lu(k,1405) = lu(k,1405) - lu(k,1082) * lu(k,1385)
         lu(k,1407) = lu(k,1407) - lu(k,1083) * lu(k,1385)
         lu(k,1409) = lu(k,1409) - lu(k,1084) * lu(k,1385)
         lu(k,1503) = lu(k,1503) - lu(k,1077) * lu(k,1493)
         lu(k,1505) = lu(k,1505) - lu(k,1078) * lu(k,1493)
         lu(k,1510) = lu(k,1510) - lu(k,1079) * lu(k,1493)
         lu(k,1514) = lu(k,1514) - lu(k,1080) * lu(k,1493)
         lu(k,1515) = lu(k,1515) - lu(k,1081) * lu(k,1493)
         lu(k,1516) = lu(k,1516) - lu(k,1082) * lu(k,1493)
         lu(k,1519) = lu(k,1519) - lu(k,1083) * lu(k,1493)
         lu(k,1521) = lu(k,1521) - lu(k,1084) * lu(k,1493)
         lu(k,1537) = - lu(k,1077) * lu(k,1535)
         lu(k,1540) = lu(k,1540) - lu(k,1078) * lu(k,1535)
         lu(k,1545) = lu(k,1545) - lu(k,1079) * lu(k,1535)
         lu(k,1549) = lu(k,1549) - lu(k,1080) * lu(k,1535)
         lu(k,1550) = lu(k,1550) - lu(k,1081) * lu(k,1535)
         lu(k,1551) = lu(k,1551) - lu(k,1082) * lu(k,1535)
         lu(k,1554) = lu(k,1554) - lu(k,1083) * lu(k,1535)
         lu(k,1556) = lu(k,1556) - lu(k,1084) * lu(k,1535)
         lu(k,1710) = lu(k,1710) - lu(k,1077) * lu(k,1699)
         lu(k,1714) = lu(k,1714) - lu(k,1078) * lu(k,1699)
         lu(k,1719) = lu(k,1719) - lu(k,1079) * lu(k,1699)
         lu(k,1723) = lu(k,1723) - lu(k,1080) * lu(k,1699)
         lu(k,1724) = lu(k,1724) - lu(k,1081) * lu(k,1699)
         lu(k,1725) = lu(k,1725) - lu(k,1082) * lu(k,1699)
         lu(k,1728) = lu(k,1728) - lu(k,1083) * lu(k,1699)
         lu(k,1730) = lu(k,1730) - lu(k,1084) * lu(k,1699)
         lu(k,1773) = lu(k,1773) - lu(k,1077) * lu(k,1764)
         lu(k,1776) = lu(k,1776) - lu(k,1078) * lu(k,1764)
         lu(k,1781) = lu(k,1781) - lu(k,1079) * lu(k,1764)
         lu(k,1785) = lu(k,1785) - lu(k,1080) * lu(k,1764)
         lu(k,1786) = lu(k,1786) - lu(k,1081) * lu(k,1764)
         lu(k,1787) = lu(k,1787) - lu(k,1082) * lu(k,1764)
         lu(k,1790) = lu(k,1790) - lu(k,1083) * lu(k,1764)
         lu(k,1792) = lu(k,1792) - lu(k,1084) * lu(k,1764)
         lu(k,1895) = lu(k,1895) - lu(k,1077) * lu(k,1885)
         lu(k,1898) = lu(k,1898) - lu(k,1078) * lu(k,1885)
         lu(k,1903) = lu(k,1903) - lu(k,1079) * lu(k,1885)
         lu(k,1907) = lu(k,1907) - lu(k,1080) * lu(k,1885)
         lu(k,1908) = lu(k,1908) - lu(k,1081) * lu(k,1885)
         lu(k,1909) = lu(k,1909) - lu(k,1082) * lu(k,1885)
         lu(k,1912) = lu(k,1912) - lu(k,1083) * lu(k,1885)
         lu(k,1914) = lu(k,1914) - lu(k,1084) * lu(k,1885)
         lu(k,2098) = lu(k,2098) - lu(k,1077) * lu(k,2087)
         lu(k,2101) = lu(k,2101) - lu(k,1078) * lu(k,2087)
         lu(k,2106) = lu(k,2106) - lu(k,1079) * lu(k,2087)
         lu(k,2110) = lu(k,2110) - lu(k,1080) * lu(k,2087)
         lu(k,2111) = lu(k,2111) - lu(k,1081) * lu(k,2087)
         lu(k,2112) = lu(k,2112) - lu(k,1082) * lu(k,2087)
         lu(k,2115) = lu(k,2115) - lu(k,1083) * lu(k,2087)
         lu(k,2117) = lu(k,2117) - lu(k,1084) * lu(k,2087)
         lu(k,1091) = 1._r8 / lu(k,1091)
         lu(k,1092) = lu(k,1092) * lu(k,1091)
         lu(k,1093) = lu(k,1093) * lu(k,1091)
         lu(k,1094) = lu(k,1094) * lu(k,1091)
         lu(k,1095) = lu(k,1095) * lu(k,1091)
         lu(k,1096) = lu(k,1096) * lu(k,1091)
         lu(k,1097) = lu(k,1097) * lu(k,1091)
         lu(k,1098) = lu(k,1098) * lu(k,1091)
         lu(k,1099) = lu(k,1099) * lu(k,1091)
         lu(k,1100) = lu(k,1100) * lu(k,1091)
         lu(k,1101) = lu(k,1101) * lu(k,1091)
         lu(k,1126) = lu(k,1126) - lu(k,1092) * lu(k,1123)
         lu(k,1128) = lu(k,1128) - lu(k,1093) * lu(k,1123)
         lu(k,1129) = lu(k,1129) - lu(k,1094) * lu(k,1123)
         lu(k,1130) = lu(k,1130) - lu(k,1095) * lu(k,1123)
         lu(k,1131) = lu(k,1131) - lu(k,1096) * lu(k,1123)
         lu(k,1132) = lu(k,1132) - lu(k,1097) * lu(k,1123)
         lu(k,1133) = lu(k,1133) - lu(k,1098) * lu(k,1123)
         lu(k,1134) = lu(k,1134) - lu(k,1099) * lu(k,1123)
         lu(k,1136) = lu(k,1136) - lu(k,1100) * lu(k,1123)
         lu(k,1137) = lu(k,1137) - lu(k,1101) * lu(k,1123)
         lu(k,1171) = lu(k,1171) - lu(k,1092) * lu(k,1169)
         lu(k,1176) = lu(k,1176) - lu(k,1093) * lu(k,1169)
         lu(k,1177) = lu(k,1177) - lu(k,1094) * lu(k,1169)
         lu(k,1178) = lu(k,1178) - lu(k,1095) * lu(k,1169)
         lu(k,1179) = lu(k,1179) - lu(k,1096) * lu(k,1169)
         lu(k,1181) = lu(k,1181) - lu(k,1097) * lu(k,1169)
         lu(k,1182) = lu(k,1182) - lu(k,1098) * lu(k,1169)
         lu(k,1183) = lu(k,1183) - lu(k,1099) * lu(k,1169)
         lu(k,1185) = lu(k,1185) - lu(k,1100) * lu(k,1169)
         lu(k,1186) = lu(k,1186) - lu(k,1101) * lu(k,1169)
         lu(k,1205) = lu(k,1205) - lu(k,1092) * lu(k,1203)
         lu(k,1210) = lu(k,1210) - lu(k,1093) * lu(k,1203)
         lu(k,1211) = lu(k,1211) - lu(k,1094) * lu(k,1203)
         lu(k,1212) = lu(k,1212) - lu(k,1095) * lu(k,1203)
         lu(k,1213) = lu(k,1213) - lu(k,1096) * lu(k,1203)
         lu(k,1215) = lu(k,1215) - lu(k,1097) * lu(k,1203)
         lu(k,1216) = lu(k,1216) - lu(k,1098) * lu(k,1203)
         lu(k,1217) = lu(k,1217) - lu(k,1099) * lu(k,1203)
         lu(k,1219) = lu(k,1219) - lu(k,1100) * lu(k,1203)
         lu(k,1220) = lu(k,1220) - lu(k,1101) * lu(k,1203)
         lu(k,1296) = lu(k,1296) - lu(k,1092) * lu(k,1293)
         lu(k,1302) = lu(k,1302) - lu(k,1093) * lu(k,1293)
         lu(k,1303) = lu(k,1303) - lu(k,1094) * lu(k,1293)
         lu(k,1305) = lu(k,1305) - lu(k,1095) * lu(k,1293)
         lu(k,1306) = lu(k,1306) - lu(k,1096) * lu(k,1293)
         lu(k,1308) = lu(k,1308) - lu(k,1097) * lu(k,1293)
         lu(k,1309) = lu(k,1309) - lu(k,1098) * lu(k,1293)
         lu(k,1310) = lu(k,1310) - lu(k,1099) * lu(k,1293)
         lu(k,1312) = lu(k,1312) - lu(k,1100) * lu(k,1293)
         lu(k,1313) = lu(k,1313) - lu(k,1101) * lu(k,1293)
         lu(k,1389) = lu(k,1389) - lu(k,1092) * lu(k,1386)
         lu(k,1395) = lu(k,1395) - lu(k,1093) * lu(k,1386)
         lu(k,1396) = lu(k,1396) - lu(k,1094) * lu(k,1386)
         lu(k,1398) = lu(k,1398) - lu(k,1095) * lu(k,1386)
         lu(k,1400) = lu(k,1400) - lu(k,1096) * lu(k,1386)
         lu(k,1402) = lu(k,1402) - lu(k,1097) * lu(k,1386)
         lu(k,1403) = lu(k,1403) - lu(k,1098) * lu(k,1386)
         lu(k,1404) = lu(k,1404) - lu(k,1099) * lu(k,1386)
         lu(k,1406) = lu(k,1406) - lu(k,1100) * lu(k,1386)
         lu(k,1407) = lu(k,1407) - lu(k,1101) * lu(k,1386)
         lu(k,1497) = lu(k,1497) - lu(k,1092) * lu(k,1494)
         lu(k,1503) = lu(k,1503) - lu(k,1093) * lu(k,1494)
         lu(k,1505) = lu(k,1505) - lu(k,1094) * lu(k,1494)
         lu(k,1507) = lu(k,1507) - lu(k,1095) * lu(k,1494)
         lu(k,1510) = lu(k,1510) - lu(k,1096) * lu(k,1494)
         lu(k,1513) = lu(k,1513) - lu(k,1097) * lu(k,1494)
         lu(k,1514) = lu(k,1514) - lu(k,1098) * lu(k,1494)
         lu(k,1515) = lu(k,1515) - lu(k,1099) * lu(k,1494)
         lu(k,1517) = lu(k,1517) - lu(k,1100) * lu(k,1494)
         lu(k,1519) = lu(k,1519) - lu(k,1101) * lu(k,1494)
         lu(k,1704) = lu(k,1704) - lu(k,1092) * lu(k,1700)
         lu(k,1710) = lu(k,1710) - lu(k,1093) * lu(k,1700)
         lu(k,1714) = lu(k,1714) - lu(k,1094) * lu(k,1700)
         lu(k,1716) = lu(k,1716) - lu(k,1095) * lu(k,1700)
         lu(k,1719) = lu(k,1719) - lu(k,1096) * lu(k,1700)
         lu(k,1722) = lu(k,1722) - lu(k,1097) * lu(k,1700)
         lu(k,1723) = lu(k,1723) - lu(k,1098) * lu(k,1700)
         lu(k,1724) = lu(k,1724) - lu(k,1099) * lu(k,1700)
         lu(k,1726) = lu(k,1726) - lu(k,1100) * lu(k,1700)
         lu(k,1728) = lu(k,1728) - lu(k,1101) * lu(k,1700)
         lu(k,1889) = lu(k,1889) - lu(k,1092) * lu(k,1886)
         lu(k,1895) = lu(k,1895) - lu(k,1093) * lu(k,1886)
         lu(k,1898) = lu(k,1898) - lu(k,1094) * lu(k,1886)
         lu(k,1900) = lu(k,1900) - lu(k,1095) * lu(k,1886)
         lu(k,1903) = lu(k,1903) - lu(k,1096) * lu(k,1886)
         lu(k,1906) = lu(k,1906) - lu(k,1097) * lu(k,1886)
         lu(k,1907) = lu(k,1907) - lu(k,1098) * lu(k,1886)
         lu(k,1908) = lu(k,1908) - lu(k,1099) * lu(k,1886)
         lu(k,1910) = lu(k,1910) - lu(k,1100) * lu(k,1886)
         lu(k,1912) = lu(k,1912) - lu(k,1101) * lu(k,1886)
         lu(k,2092) = lu(k,2092) - lu(k,1092) * lu(k,2088)
         lu(k,2098) = lu(k,2098) - lu(k,1093) * lu(k,2088)
         lu(k,2101) = lu(k,2101) - lu(k,1094) * lu(k,2088)
         lu(k,2103) = lu(k,2103) - lu(k,1095) * lu(k,2088)
         lu(k,2106) = lu(k,2106) - lu(k,1096) * lu(k,2088)
         lu(k,2109) = lu(k,2109) - lu(k,1097) * lu(k,2088)
         lu(k,2110) = lu(k,2110) - lu(k,1098) * lu(k,2088)
         lu(k,2111) = lu(k,2111) - lu(k,1099) * lu(k,2088)
         lu(k,2113) = lu(k,2113) - lu(k,1100) * lu(k,2088)
         lu(k,2115) = lu(k,2115) - lu(k,1101) * lu(k,2088)
         lu(k,1104) = 1._r8 / lu(k,1104)
         lu(k,1105) = lu(k,1105) * lu(k,1104)
         lu(k,1106) = lu(k,1106) * lu(k,1104)
         lu(k,1107) = lu(k,1107) * lu(k,1104)
         lu(k,1108) = lu(k,1108) * lu(k,1104)
         lu(k,1109) = lu(k,1109) * lu(k,1104)
         lu(k,1110) = lu(k,1110) * lu(k,1104)
         lu(k,1111) = lu(k,1111) * lu(k,1104)
         lu(k,1112) = lu(k,1112) * lu(k,1104)
         lu(k,1113) = lu(k,1113) * lu(k,1104)
         lu(k,1114) = lu(k,1114) * lu(k,1104)
         lu(k,1538) = lu(k,1538) - lu(k,1105) * lu(k,1536)
         lu(k,1540) = lu(k,1540) - lu(k,1106) * lu(k,1536)
         lu(k,1543) = lu(k,1543) - lu(k,1107) * lu(k,1536)
         lu(k,1544) = - lu(k,1108) * lu(k,1536)
         lu(k,1545) = lu(k,1545) - lu(k,1109) * lu(k,1536)
         lu(k,1547) = lu(k,1547) - lu(k,1110) * lu(k,1536)
         lu(k,1549) = lu(k,1549) - lu(k,1111) * lu(k,1536)
         lu(k,1550) = lu(k,1550) - lu(k,1112) * lu(k,1536)
         lu(k,1551) = lu(k,1551) - lu(k,1113) * lu(k,1536)
         lu(k,1556) = lu(k,1556) - lu(k,1114) * lu(k,1536)
         lu(k,1564) = lu(k,1564) - lu(k,1105) * lu(k,1563)
         lu(k,1566) = lu(k,1566) - lu(k,1106) * lu(k,1563)
         lu(k,1569) = lu(k,1569) - lu(k,1107) * lu(k,1563)
         lu(k,1570) = lu(k,1570) - lu(k,1108) * lu(k,1563)
         lu(k,1571) = lu(k,1571) - lu(k,1109) * lu(k,1563)
         lu(k,1573) = lu(k,1573) - lu(k,1110) * lu(k,1563)
         lu(k,1575) = lu(k,1575) - lu(k,1111) * lu(k,1563)
         lu(k,1576) = lu(k,1576) - lu(k,1112) * lu(k,1563)
         lu(k,1577) = lu(k,1577) - lu(k,1113) * lu(k,1563)
         lu(k,1582) = lu(k,1582) - lu(k,1114) * lu(k,1563)
         lu(k,1712) = lu(k,1712) - lu(k,1105) * lu(k,1701)
         lu(k,1714) = lu(k,1714) - lu(k,1106) * lu(k,1701)
         lu(k,1717) = lu(k,1717) - lu(k,1107) * lu(k,1701)
         lu(k,1718) = lu(k,1718) - lu(k,1108) * lu(k,1701)
         lu(k,1719) = lu(k,1719) - lu(k,1109) * lu(k,1701)
         lu(k,1721) = lu(k,1721) - lu(k,1110) * lu(k,1701)
         lu(k,1723) = lu(k,1723) - lu(k,1111) * lu(k,1701)
         lu(k,1724) = lu(k,1724) - lu(k,1112) * lu(k,1701)
         lu(k,1725) = lu(k,1725) - lu(k,1113) * lu(k,1701)
         lu(k,1730) = lu(k,1730) - lu(k,1114) * lu(k,1701)
         lu(k,1815) = lu(k,1815) - lu(k,1105) * lu(k,1813)
         lu(k,1817) = - lu(k,1106) * lu(k,1813)
         lu(k,1820) = lu(k,1820) - lu(k,1107) * lu(k,1813)
         lu(k,1821) = lu(k,1821) - lu(k,1108) * lu(k,1813)
         lu(k,1822) = lu(k,1822) - lu(k,1109) * lu(k,1813)
         lu(k,1824) = lu(k,1824) - lu(k,1110) * lu(k,1813)
         lu(k,1826) = lu(k,1826) - lu(k,1111) * lu(k,1813)
         lu(k,1827) = lu(k,1827) - lu(k,1112) * lu(k,1813)
         lu(k,1828) = lu(k,1828) - lu(k,1113) * lu(k,1813)
         lu(k,1833) = lu(k,1833) - lu(k,1114) * lu(k,1813)
         lu(k,1839) = lu(k,1839) - lu(k,1105) * lu(k,1838)
         lu(k,1841) = - lu(k,1106) * lu(k,1838)
         lu(k,1844) = lu(k,1844) - lu(k,1107) * lu(k,1838)
         lu(k,1845) = lu(k,1845) - lu(k,1108) * lu(k,1838)
         lu(k,1846) = lu(k,1846) - lu(k,1109) * lu(k,1838)
         lu(k,1848) = lu(k,1848) - lu(k,1110) * lu(k,1838)
         lu(k,1850) = lu(k,1850) - lu(k,1111) * lu(k,1838)
         lu(k,1851) = lu(k,1851) - lu(k,1112) * lu(k,1838)
         lu(k,1852) = lu(k,1852) - lu(k,1113) * lu(k,1838)
         lu(k,1857) = lu(k,1857) - lu(k,1114) * lu(k,1838)
         lu(k,1916) = - lu(k,1105) * lu(k,1915)
         lu(k,1918) = - lu(k,1106) * lu(k,1915)
         lu(k,1921) = - lu(k,1107) * lu(k,1915)
         lu(k,1922) = - lu(k,1108) * lu(k,1915)
         lu(k,1923) = lu(k,1923) - lu(k,1109) * lu(k,1915)
         lu(k,1925) = lu(k,1925) - lu(k,1110) * lu(k,1915)
         lu(k,1927) = - lu(k,1111) * lu(k,1915)
         lu(k,1928) = lu(k,1928) - lu(k,1112) * lu(k,1915)
         lu(k,1929) = - lu(k,1113) * lu(k,1915)
         lu(k,1934) = lu(k,1934) - lu(k,1114) * lu(k,1915)
         lu(k,1938) = - lu(k,1105) * lu(k,1937)
         lu(k,1940) = lu(k,1940) - lu(k,1106) * lu(k,1937)
         lu(k,1943) = - lu(k,1107) * lu(k,1937)
         lu(k,1944) = - lu(k,1108) * lu(k,1937)
         lu(k,1945) = lu(k,1945) - lu(k,1109) * lu(k,1937)
         lu(k,1947) = - lu(k,1110) * lu(k,1937)
         lu(k,1949) = lu(k,1949) - lu(k,1111) * lu(k,1937)
         lu(k,1950) = lu(k,1950) - lu(k,1112) * lu(k,1937)
         lu(k,1951) = lu(k,1951) - lu(k,1113) * lu(k,1937)
         lu(k,1956) = lu(k,1956) - lu(k,1114) * lu(k,1937)
         lu(k,2099) = lu(k,2099) - lu(k,1105) * lu(k,2089)
         lu(k,2101) = lu(k,2101) - lu(k,1106) * lu(k,2089)
         lu(k,2104) = lu(k,2104) - lu(k,1107) * lu(k,2089)
         lu(k,2105) = lu(k,2105) - lu(k,1108) * lu(k,2089)
         lu(k,2106) = lu(k,2106) - lu(k,1109) * lu(k,2089)
         lu(k,2108) = lu(k,2108) - lu(k,1110) * lu(k,2089)
         lu(k,2110) = lu(k,2110) - lu(k,1111) * lu(k,2089)
         lu(k,2111) = lu(k,2111) - lu(k,1112) * lu(k,2089)
         lu(k,2112) = lu(k,2112) - lu(k,1113) * lu(k,2089)
         lu(k,2117) = lu(k,2117) - lu(k,1114) * lu(k,2089)
         lu(k,2152) = - lu(k,1105) * lu(k,2150)
         lu(k,2154) = lu(k,2154) - lu(k,1106) * lu(k,2150)
         lu(k,2157) = - lu(k,1107) * lu(k,2150)
         lu(k,2158) = lu(k,2158) - lu(k,1108) * lu(k,2150)
         lu(k,2159) = lu(k,2159) - lu(k,1109) * lu(k,2150)
         lu(k,2161) = lu(k,2161) - lu(k,1110) * lu(k,2150)
         lu(k,2163) = lu(k,2163) - lu(k,1111) * lu(k,2150)
         lu(k,2164) = lu(k,2164) - lu(k,1112) * lu(k,2150)
         lu(k,2165) = lu(k,2165) - lu(k,1113) * lu(k,2150)
         lu(k,2170) = lu(k,2170) - lu(k,1114) * lu(k,2150)
         lu(k,1124) = 1._r8 / lu(k,1124)
         lu(k,1125) = lu(k,1125) * lu(k,1124)
         lu(k,1126) = lu(k,1126) * lu(k,1124)
         lu(k,1127) = lu(k,1127) * lu(k,1124)
         lu(k,1128) = lu(k,1128) * lu(k,1124)
         lu(k,1129) = lu(k,1129) * lu(k,1124)
         lu(k,1130) = lu(k,1130) * lu(k,1124)
         lu(k,1131) = lu(k,1131) * lu(k,1124)
         lu(k,1132) = lu(k,1132) * lu(k,1124)
         lu(k,1133) = lu(k,1133) * lu(k,1124)
         lu(k,1134) = lu(k,1134) * lu(k,1124)
         lu(k,1135) = lu(k,1135) * lu(k,1124)
         lu(k,1136) = lu(k,1136) * lu(k,1124)
         lu(k,1137) = lu(k,1137) * lu(k,1124)
         lu(k,1295) = lu(k,1295) - lu(k,1125) * lu(k,1294)
         lu(k,1296) = lu(k,1296) - lu(k,1126) * lu(k,1294)
         lu(k,1300) = lu(k,1300) - lu(k,1127) * lu(k,1294)
         lu(k,1302) = lu(k,1302) - lu(k,1128) * lu(k,1294)
         lu(k,1303) = lu(k,1303) - lu(k,1129) * lu(k,1294)
         lu(k,1305) = lu(k,1305) - lu(k,1130) * lu(k,1294)
         lu(k,1306) = lu(k,1306) - lu(k,1131) * lu(k,1294)
         lu(k,1308) = lu(k,1308) - lu(k,1132) * lu(k,1294)
         lu(k,1309) = lu(k,1309) - lu(k,1133) * lu(k,1294)
         lu(k,1310) = lu(k,1310) - lu(k,1134) * lu(k,1294)
         lu(k,1311) = lu(k,1311) - lu(k,1135) * lu(k,1294)
         lu(k,1312) = lu(k,1312) - lu(k,1136) * lu(k,1294)
         lu(k,1313) = lu(k,1313) - lu(k,1137) * lu(k,1294)
         lu(k,1388) = lu(k,1388) - lu(k,1125) * lu(k,1387)
         lu(k,1389) = lu(k,1389) - lu(k,1126) * lu(k,1387)
         lu(k,1393) = lu(k,1393) - lu(k,1127) * lu(k,1387)
         lu(k,1395) = lu(k,1395) - lu(k,1128) * lu(k,1387)
         lu(k,1396) = lu(k,1396) - lu(k,1129) * lu(k,1387)
         lu(k,1398) = lu(k,1398) - lu(k,1130) * lu(k,1387)
         lu(k,1400) = lu(k,1400) - lu(k,1131) * lu(k,1387)
         lu(k,1402) = lu(k,1402) - lu(k,1132) * lu(k,1387)
         lu(k,1403) = lu(k,1403) - lu(k,1133) * lu(k,1387)
         lu(k,1404) = lu(k,1404) - lu(k,1134) * lu(k,1387)
         lu(k,1405) = lu(k,1405) - lu(k,1135) * lu(k,1387)
         lu(k,1406) = lu(k,1406) - lu(k,1136) * lu(k,1387)
         lu(k,1407) = lu(k,1407) - lu(k,1137) * lu(k,1387)
         lu(k,1496) = lu(k,1496) - lu(k,1125) * lu(k,1495)
         lu(k,1497) = lu(k,1497) - lu(k,1126) * lu(k,1495)
         lu(k,1501) = lu(k,1501) - lu(k,1127) * lu(k,1495)
         lu(k,1503) = lu(k,1503) - lu(k,1128) * lu(k,1495)
         lu(k,1505) = lu(k,1505) - lu(k,1129) * lu(k,1495)
         lu(k,1507) = lu(k,1507) - lu(k,1130) * lu(k,1495)
         lu(k,1510) = lu(k,1510) - lu(k,1131) * lu(k,1495)
         lu(k,1513) = lu(k,1513) - lu(k,1132) * lu(k,1495)
         lu(k,1514) = lu(k,1514) - lu(k,1133) * lu(k,1495)
         lu(k,1515) = lu(k,1515) - lu(k,1134) * lu(k,1495)
         lu(k,1516) = lu(k,1516) - lu(k,1135) * lu(k,1495)
         lu(k,1517) = lu(k,1517) - lu(k,1136) * lu(k,1495)
         lu(k,1519) = lu(k,1519) - lu(k,1137) * lu(k,1495)
         lu(k,1703) = lu(k,1703) - lu(k,1125) * lu(k,1702)
         lu(k,1704) = lu(k,1704) - lu(k,1126) * lu(k,1702)
         lu(k,1708) = lu(k,1708) - lu(k,1127) * lu(k,1702)
         lu(k,1710) = lu(k,1710) - lu(k,1128) * lu(k,1702)
         lu(k,1714) = lu(k,1714) - lu(k,1129) * lu(k,1702)
         lu(k,1716) = lu(k,1716) - lu(k,1130) * lu(k,1702)
         lu(k,1719) = lu(k,1719) - lu(k,1131) * lu(k,1702)
         lu(k,1722) = lu(k,1722) - lu(k,1132) * lu(k,1702)
         lu(k,1723) = lu(k,1723) - lu(k,1133) * lu(k,1702)
         lu(k,1724) = lu(k,1724) - lu(k,1134) * lu(k,1702)
         lu(k,1725) = lu(k,1725) - lu(k,1135) * lu(k,1702)
         lu(k,1726) = lu(k,1726) - lu(k,1136) * lu(k,1702)
         lu(k,1728) = lu(k,1728) - lu(k,1137) * lu(k,1702)
         lu(k,1766) = lu(k,1766) - lu(k,1125) * lu(k,1765)
         lu(k,1767) = lu(k,1767) - lu(k,1126) * lu(k,1765)
         lu(k,1771) = lu(k,1771) - lu(k,1127) * lu(k,1765)
         lu(k,1773) = lu(k,1773) - lu(k,1128) * lu(k,1765)
         lu(k,1776) = lu(k,1776) - lu(k,1129) * lu(k,1765)
         lu(k,1778) = lu(k,1778) - lu(k,1130) * lu(k,1765)
         lu(k,1781) = lu(k,1781) - lu(k,1131) * lu(k,1765)
         lu(k,1784) = lu(k,1784) - lu(k,1132) * lu(k,1765)
         lu(k,1785) = lu(k,1785) - lu(k,1133) * lu(k,1765)
         lu(k,1786) = lu(k,1786) - lu(k,1134) * lu(k,1765)
         lu(k,1787) = lu(k,1787) - lu(k,1135) * lu(k,1765)
         lu(k,1788) = lu(k,1788) - lu(k,1136) * lu(k,1765)
         lu(k,1790) = lu(k,1790) - lu(k,1137) * lu(k,1765)
         lu(k,1888) = lu(k,1888) - lu(k,1125) * lu(k,1887)
         lu(k,1889) = lu(k,1889) - lu(k,1126) * lu(k,1887)
         lu(k,1893) = lu(k,1893) - lu(k,1127) * lu(k,1887)
         lu(k,1895) = lu(k,1895) - lu(k,1128) * lu(k,1887)
         lu(k,1898) = lu(k,1898) - lu(k,1129) * lu(k,1887)
         lu(k,1900) = lu(k,1900) - lu(k,1130) * lu(k,1887)
         lu(k,1903) = lu(k,1903) - lu(k,1131) * lu(k,1887)
         lu(k,1906) = lu(k,1906) - lu(k,1132) * lu(k,1887)
         lu(k,1907) = lu(k,1907) - lu(k,1133) * lu(k,1887)
         lu(k,1908) = lu(k,1908) - lu(k,1134) * lu(k,1887)
         lu(k,1909) = lu(k,1909) - lu(k,1135) * lu(k,1887)
         lu(k,1910) = lu(k,1910) - lu(k,1136) * lu(k,1887)
         lu(k,1912) = lu(k,1912) - lu(k,1137) * lu(k,1887)
         lu(k,2091) = lu(k,2091) - lu(k,1125) * lu(k,2090)
         lu(k,2092) = lu(k,2092) - lu(k,1126) * lu(k,2090)
         lu(k,2096) = lu(k,2096) - lu(k,1127) * lu(k,2090)
         lu(k,2098) = lu(k,2098) - lu(k,1128) * lu(k,2090)
         lu(k,2101) = lu(k,2101) - lu(k,1129) * lu(k,2090)
         lu(k,2103) = lu(k,2103) - lu(k,1130) * lu(k,2090)
         lu(k,2106) = lu(k,2106) - lu(k,1131) * lu(k,2090)
         lu(k,2109) = lu(k,2109) - lu(k,1132) * lu(k,2090)
         lu(k,2110) = lu(k,2110) - lu(k,1133) * lu(k,2090)
         lu(k,2111) = lu(k,2111) - lu(k,1134) * lu(k,2090)
         lu(k,2112) = lu(k,2112) - lu(k,1135) * lu(k,2090)
         lu(k,2113) = lu(k,2113) - lu(k,1136) * lu(k,2090)
         lu(k,2115) = lu(k,2115) - lu(k,1137) * lu(k,2090)
      end do
      end subroutine lu_fac23
      subroutine lu_fac24( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1140) = 1._r8 / lu(k,1140)
         lu(k,1141) = lu(k,1141) * lu(k,1140)
         lu(k,1142) = lu(k,1142) * lu(k,1140)
         lu(k,1143) = lu(k,1143) * lu(k,1140)
         lu(k,1144) = lu(k,1144) * lu(k,1140)
         lu(k,1145) = lu(k,1145) * lu(k,1140)
         lu(k,1146) = lu(k,1146) * lu(k,1140)
         lu(k,1147) = lu(k,1147) * lu(k,1140)
         lu(k,1148) = lu(k,1148) * lu(k,1140)
         lu(k,1149) = lu(k,1149) * lu(k,1140)
         lu(k,1150) = lu(k,1150) * lu(k,1140)
         lu(k,1171) = lu(k,1171) - lu(k,1141) * lu(k,1170)
         lu(k,1173) = - lu(k,1142) * lu(k,1170)
         lu(k,1175) = - lu(k,1143) * lu(k,1170)
         lu(k,1176) = lu(k,1176) - lu(k,1144) * lu(k,1170)
         lu(k,1179) = lu(k,1179) - lu(k,1145) * lu(k,1170)
         lu(k,1180) = - lu(k,1146) * lu(k,1170)
         lu(k,1181) = lu(k,1181) - lu(k,1147) * lu(k,1170)
         lu(k,1183) = lu(k,1183) - lu(k,1148) * lu(k,1170)
         lu(k,1186) = lu(k,1186) - lu(k,1149) * lu(k,1170)
         lu(k,1187) = lu(k,1187) - lu(k,1150) * lu(k,1170)
         lu(k,1205) = lu(k,1205) - lu(k,1141) * lu(k,1204)
         lu(k,1207) = - lu(k,1142) * lu(k,1204)
         lu(k,1209) = - lu(k,1143) * lu(k,1204)
         lu(k,1210) = lu(k,1210) - lu(k,1144) * lu(k,1204)
         lu(k,1213) = lu(k,1213) - lu(k,1145) * lu(k,1204)
         lu(k,1214) = - lu(k,1146) * lu(k,1204)
         lu(k,1215) = lu(k,1215) - lu(k,1147) * lu(k,1204)
         lu(k,1217) = lu(k,1217) - lu(k,1148) * lu(k,1204)
         lu(k,1220) = lu(k,1220) - lu(k,1149) * lu(k,1204)
         lu(k,1221) = lu(k,1221) - lu(k,1150) * lu(k,1204)
         lu(k,1296) = lu(k,1296) - lu(k,1141) * lu(k,1295)
         lu(k,1299) = lu(k,1299) - lu(k,1142) * lu(k,1295)
         lu(k,1301) = lu(k,1301) - lu(k,1143) * lu(k,1295)
         lu(k,1302) = lu(k,1302) - lu(k,1144) * lu(k,1295)
         lu(k,1306) = lu(k,1306) - lu(k,1145) * lu(k,1295)
         lu(k,1307) = lu(k,1307) - lu(k,1146) * lu(k,1295)
         lu(k,1308) = lu(k,1308) - lu(k,1147) * lu(k,1295)
         lu(k,1310) = lu(k,1310) - lu(k,1148) * lu(k,1295)
         lu(k,1313) = lu(k,1313) - lu(k,1149) * lu(k,1295)
         lu(k,1314) = lu(k,1314) - lu(k,1150) * lu(k,1295)
         lu(k,1389) = lu(k,1389) - lu(k,1141) * lu(k,1388)
         lu(k,1392) = lu(k,1392) - lu(k,1142) * lu(k,1388)
         lu(k,1394) = lu(k,1394) - lu(k,1143) * lu(k,1388)
         lu(k,1395) = lu(k,1395) - lu(k,1144) * lu(k,1388)
         lu(k,1400) = lu(k,1400) - lu(k,1145) * lu(k,1388)
         lu(k,1401) = - lu(k,1146) * lu(k,1388)
         lu(k,1402) = lu(k,1402) - lu(k,1147) * lu(k,1388)
         lu(k,1404) = lu(k,1404) - lu(k,1148) * lu(k,1388)
         lu(k,1407) = lu(k,1407) - lu(k,1149) * lu(k,1388)
         lu(k,1409) = lu(k,1409) - lu(k,1150) * lu(k,1388)
         lu(k,1497) = lu(k,1497) - lu(k,1141) * lu(k,1496)
         lu(k,1500) = lu(k,1500) - lu(k,1142) * lu(k,1496)
         lu(k,1502) = lu(k,1502) - lu(k,1143) * lu(k,1496)
         lu(k,1503) = lu(k,1503) - lu(k,1144) * lu(k,1496)
         lu(k,1510) = lu(k,1510) - lu(k,1145) * lu(k,1496)
         lu(k,1511) = lu(k,1511) - lu(k,1146) * lu(k,1496)
         lu(k,1513) = lu(k,1513) - lu(k,1147) * lu(k,1496)
         lu(k,1515) = lu(k,1515) - lu(k,1148) * lu(k,1496)
         lu(k,1519) = lu(k,1519) - lu(k,1149) * lu(k,1496)
         lu(k,1521) = lu(k,1521) - lu(k,1150) * lu(k,1496)
         lu(k,1704) = lu(k,1704) - lu(k,1141) * lu(k,1703)
         lu(k,1707) = lu(k,1707) - lu(k,1142) * lu(k,1703)
         lu(k,1709) = lu(k,1709) - lu(k,1143) * lu(k,1703)
         lu(k,1710) = lu(k,1710) - lu(k,1144) * lu(k,1703)
         lu(k,1719) = lu(k,1719) - lu(k,1145) * lu(k,1703)
         lu(k,1720) = lu(k,1720) - lu(k,1146) * lu(k,1703)
         lu(k,1722) = lu(k,1722) - lu(k,1147) * lu(k,1703)
         lu(k,1724) = lu(k,1724) - lu(k,1148) * lu(k,1703)
         lu(k,1728) = lu(k,1728) - lu(k,1149) * lu(k,1703)
         lu(k,1730) = lu(k,1730) - lu(k,1150) * lu(k,1703)
         lu(k,1767) = lu(k,1767) - lu(k,1141) * lu(k,1766)
         lu(k,1770) = - lu(k,1142) * lu(k,1766)
         lu(k,1772) = - lu(k,1143) * lu(k,1766)
         lu(k,1773) = lu(k,1773) - lu(k,1144) * lu(k,1766)
         lu(k,1781) = lu(k,1781) - lu(k,1145) * lu(k,1766)
         lu(k,1782) = lu(k,1782) - lu(k,1146) * lu(k,1766)
         lu(k,1784) = lu(k,1784) - lu(k,1147) * lu(k,1766)
         lu(k,1786) = lu(k,1786) - lu(k,1148) * lu(k,1766)
         lu(k,1790) = lu(k,1790) - lu(k,1149) * lu(k,1766)
         lu(k,1792) = lu(k,1792) - lu(k,1150) * lu(k,1766)
         lu(k,1889) = lu(k,1889) - lu(k,1141) * lu(k,1888)
         lu(k,1892) = lu(k,1892) - lu(k,1142) * lu(k,1888)
         lu(k,1894) = lu(k,1894) - lu(k,1143) * lu(k,1888)
         lu(k,1895) = lu(k,1895) - lu(k,1144) * lu(k,1888)
         lu(k,1903) = lu(k,1903) - lu(k,1145) * lu(k,1888)
         lu(k,1904) = lu(k,1904) - lu(k,1146) * lu(k,1888)
         lu(k,1906) = lu(k,1906) - lu(k,1147) * lu(k,1888)
         lu(k,1908) = lu(k,1908) - lu(k,1148) * lu(k,1888)
         lu(k,1912) = lu(k,1912) - lu(k,1149) * lu(k,1888)
         lu(k,1914) = lu(k,1914) - lu(k,1150) * lu(k,1888)
         lu(k,2092) = lu(k,2092) - lu(k,1141) * lu(k,2091)
         lu(k,2095) = lu(k,2095) - lu(k,1142) * lu(k,2091)
         lu(k,2097) = lu(k,2097) - lu(k,1143) * lu(k,2091)
         lu(k,2098) = lu(k,2098) - lu(k,1144) * lu(k,2091)
         lu(k,2106) = lu(k,2106) - lu(k,1145) * lu(k,2091)
         lu(k,2107) = lu(k,2107) - lu(k,1146) * lu(k,2091)
         lu(k,2109) = lu(k,2109) - lu(k,1147) * lu(k,2091)
         lu(k,2111) = lu(k,2111) - lu(k,1148) * lu(k,2091)
         lu(k,2115) = lu(k,2115) - lu(k,1149) * lu(k,2091)
         lu(k,2117) = lu(k,2117) - lu(k,1150) * lu(k,2091)
         lu(k,1152) = 1._r8 / lu(k,1152)
         lu(k,1153) = lu(k,1153) * lu(k,1152)
         lu(k,1154) = lu(k,1154) * lu(k,1152)
         lu(k,1155) = lu(k,1155) * lu(k,1152)
         lu(k,1156) = lu(k,1156) * lu(k,1152)
         lu(k,1157) = lu(k,1157) * lu(k,1152)
         lu(k,1158) = lu(k,1158) * lu(k,1152)
         lu(k,1159) = lu(k,1159) * lu(k,1152)
         lu(k,1176) = lu(k,1176) - lu(k,1153) * lu(k,1171)
         lu(k,1179) = lu(k,1179) - lu(k,1154) * lu(k,1171)
         lu(k,1182) = lu(k,1182) - lu(k,1155) * lu(k,1171)
         lu(k,1183) = lu(k,1183) - lu(k,1156) * lu(k,1171)
         lu(k,1184) = lu(k,1184) - lu(k,1157) * lu(k,1171)
         lu(k,1186) = lu(k,1186) - lu(k,1158) * lu(k,1171)
         lu(k,1187) = lu(k,1187) - lu(k,1159) * lu(k,1171)
         lu(k,1210) = lu(k,1210) - lu(k,1153) * lu(k,1205)
         lu(k,1213) = lu(k,1213) - lu(k,1154) * lu(k,1205)
         lu(k,1216) = lu(k,1216) - lu(k,1155) * lu(k,1205)
         lu(k,1217) = lu(k,1217) - lu(k,1156) * lu(k,1205)
         lu(k,1218) = lu(k,1218) - lu(k,1157) * lu(k,1205)
         lu(k,1220) = lu(k,1220) - lu(k,1158) * lu(k,1205)
         lu(k,1221) = lu(k,1221) - lu(k,1159) * lu(k,1205)
         lu(k,1233) = lu(k,1233) - lu(k,1153) * lu(k,1230)
         lu(k,1236) = lu(k,1236) - lu(k,1154) * lu(k,1230)
         lu(k,1238) = lu(k,1238) - lu(k,1155) * lu(k,1230)
         lu(k,1239) = lu(k,1239) - lu(k,1156) * lu(k,1230)
         lu(k,1240) = lu(k,1240) - lu(k,1157) * lu(k,1230)
         lu(k,1242) = lu(k,1242) - lu(k,1158) * lu(k,1230)
         lu(k,1243) = lu(k,1243) - lu(k,1159) * lu(k,1230)
         lu(k,1253) = lu(k,1253) - lu(k,1153) * lu(k,1249)
         lu(k,1257) = lu(k,1257) - lu(k,1154) * lu(k,1249)
         lu(k,1260) = lu(k,1260) - lu(k,1155) * lu(k,1249)
         lu(k,1261) = lu(k,1261) - lu(k,1156) * lu(k,1249)
         lu(k,1262) = lu(k,1262) - lu(k,1157) * lu(k,1249)
         lu(k,1264) = lu(k,1264) - lu(k,1158) * lu(k,1249)
         lu(k,1265) = lu(k,1265) - lu(k,1159) * lu(k,1249)
         lu(k,1272) = lu(k,1272) - lu(k,1153) * lu(k,1270)
         lu(k,1275) = lu(k,1275) - lu(k,1154) * lu(k,1270)
         lu(k,1278) = lu(k,1278) - lu(k,1155) * lu(k,1270)
         lu(k,1279) = - lu(k,1156) * lu(k,1270)
         lu(k,1280) = - lu(k,1157) * lu(k,1270)
         lu(k,1282) = lu(k,1282) - lu(k,1158) * lu(k,1270)
         lu(k,1283) = lu(k,1283) - lu(k,1159) * lu(k,1270)
         lu(k,1302) = lu(k,1302) - lu(k,1153) * lu(k,1296)
         lu(k,1306) = lu(k,1306) - lu(k,1154) * lu(k,1296)
         lu(k,1309) = lu(k,1309) - lu(k,1155) * lu(k,1296)
         lu(k,1310) = lu(k,1310) - lu(k,1156) * lu(k,1296)
         lu(k,1311) = lu(k,1311) - lu(k,1157) * lu(k,1296)
         lu(k,1313) = lu(k,1313) - lu(k,1158) * lu(k,1296)
         lu(k,1314) = lu(k,1314) - lu(k,1159) * lu(k,1296)
         lu(k,1395) = lu(k,1395) - lu(k,1153) * lu(k,1389)
         lu(k,1400) = lu(k,1400) - lu(k,1154) * lu(k,1389)
         lu(k,1403) = lu(k,1403) - lu(k,1155) * lu(k,1389)
         lu(k,1404) = lu(k,1404) - lu(k,1156) * lu(k,1389)
         lu(k,1405) = lu(k,1405) - lu(k,1157) * lu(k,1389)
         lu(k,1407) = lu(k,1407) - lu(k,1158) * lu(k,1389)
         lu(k,1409) = lu(k,1409) - lu(k,1159) * lu(k,1389)
         lu(k,1503) = lu(k,1503) - lu(k,1153) * lu(k,1497)
         lu(k,1510) = lu(k,1510) - lu(k,1154) * lu(k,1497)
         lu(k,1514) = lu(k,1514) - lu(k,1155) * lu(k,1497)
         lu(k,1515) = lu(k,1515) - lu(k,1156) * lu(k,1497)
         lu(k,1516) = lu(k,1516) - lu(k,1157) * lu(k,1497)
         lu(k,1519) = lu(k,1519) - lu(k,1158) * lu(k,1497)
         lu(k,1521) = lu(k,1521) - lu(k,1159) * lu(k,1497)
         lu(k,1710) = lu(k,1710) - lu(k,1153) * lu(k,1704)
         lu(k,1719) = lu(k,1719) - lu(k,1154) * lu(k,1704)
         lu(k,1723) = lu(k,1723) - lu(k,1155) * lu(k,1704)
         lu(k,1724) = lu(k,1724) - lu(k,1156) * lu(k,1704)
         lu(k,1725) = lu(k,1725) - lu(k,1157) * lu(k,1704)
         lu(k,1728) = lu(k,1728) - lu(k,1158) * lu(k,1704)
         lu(k,1730) = lu(k,1730) - lu(k,1159) * lu(k,1704)
         lu(k,1773) = lu(k,1773) - lu(k,1153) * lu(k,1767)
         lu(k,1781) = lu(k,1781) - lu(k,1154) * lu(k,1767)
         lu(k,1785) = lu(k,1785) - lu(k,1155) * lu(k,1767)
         lu(k,1786) = lu(k,1786) - lu(k,1156) * lu(k,1767)
         lu(k,1787) = lu(k,1787) - lu(k,1157) * lu(k,1767)
         lu(k,1790) = lu(k,1790) - lu(k,1158) * lu(k,1767)
         lu(k,1792) = lu(k,1792) - lu(k,1159) * lu(k,1767)
         lu(k,1895) = lu(k,1895) - lu(k,1153) * lu(k,1889)
         lu(k,1903) = lu(k,1903) - lu(k,1154) * lu(k,1889)
         lu(k,1907) = lu(k,1907) - lu(k,1155) * lu(k,1889)
         lu(k,1908) = lu(k,1908) - lu(k,1156) * lu(k,1889)
         lu(k,1909) = lu(k,1909) - lu(k,1157) * lu(k,1889)
         lu(k,1912) = lu(k,1912) - lu(k,1158) * lu(k,1889)
         lu(k,1914) = lu(k,1914) - lu(k,1159) * lu(k,1889)
         lu(k,1978) = lu(k,1978) - lu(k,1153) * lu(k,1976)
         lu(k,1987) = lu(k,1987) - lu(k,1154) * lu(k,1976)
         lu(k,1991) = lu(k,1991) - lu(k,1155) * lu(k,1976)
         lu(k,1992) = lu(k,1992) - lu(k,1156) * lu(k,1976)
         lu(k,1993) = lu(k,1993) - lu(k,1157) * lu(k,1976)
         lu(k,1996) = lu(k,1996) - lu(k,1158) * lu(k,1976)
         lu(k,1998) = lu(k,1998) - lu(k,1159) * lu(k,1976)
         lu(k,2098) = lu(k,2098) - lu(k,1153) * lu(k,2092)
         lu(k,2106) = lu(k,2106) - lu(k,1154) * lu(k,2092)
         lu(k,2110) = lu(k,2110) - lu(k,1155) * lu(k,2092)
         lu(k,2111) = lu(k,2111) - lu(k,1156) * lu(k,2092)
         lu(k,2112) = lu(k,2112) - lu(k,1157) * lu(k,2092)
         lu(k,2115) = lu(k,2115) - lu(k,1158) * lu(k,2092)
         lu(k,2117) = lu(k,2117) - lu(k,1159) * lu(k,2092)
         lu(k,1172) = 1._r8 / lu(k,1172)
         lu(k,1173) = lu(k,1173) * lu(k,1172)
         lu(k,1174) = lu(k,1174) * lu(k,1172)
         lu(k,1175) = lu(k,1175) * lu(k,1172)
         lu(k,1176) = lu(k,1176) * lu(k,1172)
         lu(k,1177) = lu(k,1177) * lu(k,1172)
         lu(k,1178) = lu(k,1178) * lu(k,1172)
         lu(k,1179) = lu(k,1179) * lu(k,1172)
         lu(k,1180) = lu(k,1180) * lu(k,1172)
         lu(k,1181) = lu(k,1181) * lu(k,1172)
         lu(k,1182) = lu(k,1182) * lu(k,1172)
         lu(k,1183) = lu(k,1183) * lu(k,1172)
         lu(k,1184) = lu(k,1184) * lu(k,1172)
         lu(k,1185) = lu(k,1185) * lu(k,1172)
         lu(k,1186) = lu(k,1186) * lu(k,1172)
         lu(k,1187) = lu(k,1187) * lu(k,1172)
         lu(k,1299) = lu(k,1299) - lu(k,1173) * lu(k,1297)
         lu(k,1300) = lu(k,1300) - lu(k,1174) * lu(k,1297)
         lu(k,1301) = lu(k,1301) - lu(k,1175) * lu(k,1297)
         lu(k,1302) = lu(k,1302) - lu(k,1176) * lu(k,1297)
         lu(k,1303) = lu(k,1303) - lu(k,1177) * lu(k,1297)
         lu(k,1305) = lu(k,1305) - lu(k,1178) * lu(k,1297)
         lu(k,1306) = lu(k,1306) - lu(k,1179) * lu(k,1297)
         lu(k,1307) = lu(k,1307) - lu(k,1180) * lu(k,1297)
         lu(k,1308) = lu(k,1308) - lu(k,1181) * lu(k,1297)
         lu(k,1309) = lu(k,1309) - lu(k,1182) * lu(k,1297)
         lu(k,1310) = lu(k,1310) - lu(k,1183) * lu(k,1297)
         lu(k,1311) = lu(k,1311) - lu(k,1184) * lu(k,1297)
         lu(k,1312) = lu(k,1312) - lu(k,1185) * lu(k,1297)
         lu(k,1313) = lu(k,1313) - lu(k,1186) * lu(k,1297)
         lu(k,1314) = lu(k,1314) - lu(k,1187) * lu(k,1297)
         lu(k,1392) = lu(k,1392) - lu(k,1173) * lu(k,1390)
         lu(k,1393) = lu(k,1393) - lu(k,1174) * lu(k,1390)
         lu(k,1394) = lu(k,1394) - lu(k,1175) * lu(k,1390)
         lu(k,1395) = lu(k,1395) - lu(k,1176) * lu(k,1390)
         lu(k,1396) = lu(k,1396) - lu(k,1177) * lu(k,1390)
         lu(k,1398) = lu(k,1398) - lu(k,1178) * lu(k,1390)
         lu(k,1400) = lu(k,1400) - lu(k,1179) * lu(k,1390)
         lu(k,1401) = lu(k,1401) - lu(k,1180) * lu(k,1390)
         lu(k,1402) = lu(k,1402) - lu(k,1181) * lu(k,1390)
         lu(k,1403) = lu(k,1403) - lu(k,1182) * lu(k,1390)
         lu(k,1404) = lu(k,1404) - lu(k,1183) * lu(k,1390)
         lu(k,1405) = lu(k,1405) - lu(k,1184) * lu(k,1390)
         lu(k,1406) = lu(k,1406) - lu(k,1185) * lu(k,1390)
         lu(k,1407) = lu(k,1407) - lu(k,1186) * lu(k,1390)
         lu(k,1409) = lu(k,1409) - lu(k,1187) * lu(k,1390)
         lu(k,1500) = lu(k,1500) - lu(k,1173) * lu(k,1498)
         lu(k,1501) = lu(k,1501) - lu(k,1174) * lu(k,1498)
         lu(k,1502) = lu(k,1502) - lu(k,1175) * lu(k,1498)
         lu(k,1503) = lu(k,1503) - lu(k,1176) * lu(k,1498)
         lu(k,1505) = lu(k,1505) - lu(k,1177) * lu(k,1498)
         lu(k,1507) = lu(k,1507) - lu(k,1178) * lu(k,1498)
         lu(k,1510) = lu(k,1510) - lu(k,1179) * lu(k,1498)
         lu(k,1511) = lu(k,1511) - lu(k,1180) * lu(k,1498)
         lu(k,1513) = lu(k,1513) - lu(k,1181) * lu(k,1498)
         lu(k,1514) = lu(k,1514) - lu(k,1182) * lu(k,1498)
         lu(k,1515) = lu(k,1515) - lu(k,1183) * lu(k,1498)
         lu(k,1516) = lu(k,1516) - lu(k,1184) * lu(k,1498)
         lu(k,1517) = lu(k,1517) - lu(k,1185) * lu(k,1498)
         lu(k,1519) = lu(k,1519) - lu(k,1186) * lu(k,1498)
         lu(k,1521) = lu(k,1521) - lu(k,1187) * lu(k,1498)
         lu(k,1707) = lu(k,1707) - lu(k,1173) * lu(k,1705)
         lu(k,1708) = lu(k,1708) - lu(k,1174) * lu(k,1705)
         lu(k,1709) = lu(k,1709) - lu(k,1175) * lu(k,1705)
         lu(k,1710) = lu(k,1710) - lu(k,1176) * lu(k,1705)
         lu(k,1714) = lu(k,1714) - lu(k,1177) * lu(k,1705)
         lu(k,1716) = lu(k,1716) - lu(k,1178) * lu(k,1705)
         lu(k,1719) = lu(k,1719) - lu(k,1179) * lu(k,1705)
         lu(k,1720) = lu(k,1720) - lu(k,1180) * lu(k,1705)
         lu(k,1722) = lu(k,1722) - lu(k,1181) * lu(k,1705)
         lu(k,1723) = lu(k,1723) - lu(k,1182) * lu(k,1705)
         lu(k,1724) = lu(k,1724) - lu(k,1183) * lu(k,1705)
         lu(k,1725) = lu(k,1725) - lu(k,1184) * lu(k,1705)
         lu(k,1726) = lu(k,1726) - lu(k,1185) * lu(k,1705)
         lu(k,1728) = lu(k,1728) - lu(k,1186) * lu(k,1705)
         lu(k,1730) = lu(k,1730) - lu(k,1187) * lu(k,1705)
         lu(k,1770) = lu(k,1770) - lu(k,1173) * lu(k,1768)
         lu(k,1771) = lu(k,1771) - lu(k,1174) * lu(k,1768)
         lu(k,1772) = lu(k,1772) - lu(k,1175) * lu(k,1768)
         lu(k,1773) = lu(k,1773) - lu(k,1176) * lu(k,1768)
         lu(k,1776) = lu(k,1776) - lu(k,1177) * lu(k,1768)
         lu(k,1778) = lu(k,1778) - lu(k,1178) * lu(k,1768)
         lu(k,1781) = lu(k,1781) - lu(k,1179) * lu(k,1768)
         lu(k,1782) = lu(k,1782) - lu(k,1180) * lu(k,1768)
         lu(k,1784) = lu(k,1784) - lu(k,1181) * lu(k,1768)
         lu(k,1785) = lu(k,1785) - lu(k,1182) * lu(k,1768)
         lu(k,1786) = lu(k,1786) - lu(k,1183) * lu(k,1768)
         lu(k,1787) = lu(k,1787) - lu(k,1184) * lu(k,1768)
         lu(k,1788) = lu(k,1788) - lu(k,1185) * lu(k,1768)
         lu(k,1790) = lu(k,1790) - lu(k,1186) * lu(k,1768)
         lu(k,1792) = lu(k,1792) - lu(k,1187) * lu(k,1768)
         lu(k,1892) = lu(k,1892) - lu(k,1173) * lu(k,1890)
         lu(k,1893) = lu(k,1893) - lu(k,1174) * lu(k,1890)
         lu(k,1894) = lu(k,1894) - lu(k,1175) * lu(k,1890)
         lu(k,1895) = lu(k,1895) - lu(k,1176) * lu(k,1890)
         lu(k,1898) = lu(k,1898) - lu(k,1177) * lu(k,1890)
         lu(k,1900) = lu(k,1900) - lu(k,1178) * lu(k,1890)
         lu(k,1903) = lu(k,1903) - lu(k,1179) * lu(k,1890)
         lu(k,1904) = lu(k,1904) - lu(k,1180) * lu(k,1890)
         lu(k,1906) = lu(k,1906) - lu(k,1181) * lu(k,1890)
         lu(k,1907) = lu(k,1907) - lu(k,1182) * lu(k,1890)
         lu(k,1908) = lu(k,1908) - lu(k,1183) * lu(k,1890)
         lu(k,1909) = lu(k,1909) - lu(k,1184) * lu(k,1890)
         lu(k,1910) = lu(k,1910) - lu(k,1185) * lu(k,1890)
         lu(k,1912) = lu(k,1912) - lu(k,1186) * lu(k,1890)
         lu(k,1914) = lu(k,1914) - lu(k,1187) * lu(k,1890)
         lu(k,2095) = lu(k,2095) - lu(k,1173) * lu(k,2093)
         lu(k,2096) = lu(k,2096) - lu(k,1174) * lu(k,2093)
         lu(k,2097) = lu(k,2097) - lu(k,1175) * lu(k,2093)
         lu(k,2098) = lu(k,2098) - lu(k,1176) * lu(k,2093)
         lu(k,2101) = lu(k,2101) - lu(k,1177) * lu(k,2093)
         lu(k,2103) = lu(k,2103) - lu(k,1178) * lu(k,2093)
         lu(k,2106) = lu(k,2106) - lu(k,1179) * lu(k,2093)
         lu(k,2107) = lu(k,2107) - lu(k,1180) * lu(k,2093)
         lu(k,2109) = lu(k,2109) - lu(k,1181) * lu(k,2093)
         lu(k,2110) = lu(k,2110) - lu(k,1182) * lu(k,2093)
         lu(k,2111) = lu(k,2111) - lu(k,1183) * lu(k,2093)
         lu(k,2112) = lu(k,2112) - lu(k,1184) * lu(k,2093)
         lu(k,2113) = lu(k,2113) - lu(k,1185) * lu(k,2093)
         lu(k,2115) = lu(k,2115) - lu(k,1186) * lu(k,2093)
         lu(k,2117) = lu(k,2117) - lu(k,1187) * lu(k,2093)
         lu(k,1206) = 1._r8 / lu(k,1206)
         lu(k,1207) = lu(k,1207) * lu(k,1206)
         lu(k,1208) = lu(k,1208) * lu(k,1206)
         lu(k,1209) = lu(k,1209) * lu(k,1206)
         lu(k,1210) = lu(k,1210) * lu(k,1206)
         lu(k,1211) = lu(k,1211) * lu(k,1206)
         lu(k,1212) = lu(k,1212) * lu(k,1206)
         lu(k,1213) = lu(k,1213) * lu(k,1206)
         lu(k,1214) = lu(k,1214) * lu(k,1206)
         lu(k,1215) = lu(k,1215) * lu(k,1206)
         lu(k,1216) = lu(k,1216) * lu(k,1206)
         lu(k,1217) = lu(k,1217) * lu(k,1206)
         lu(k,1218) = lu(k,1218) * lu(k,1206)
         lu(k,1219) = lu(k,1219) * lu(k,1206)
         lu(k,1220) = lu(k,1220) * lu(k,1206)
         lu(k,1221) = lu(k,1221) * lu(k,1206)
         lu(k,1299) = lu(k,1299) - lu(k,1207) * lu(k,1298)
         lu(k,1300) = lu(k,1300) - lu(k,1208) * lu(k,1298)
         lu(k,1301) = lu(k,1301) - lu(k,1209) * lu(k,1298)
         lu(k,1302) = lu(k,1302) - lu(k,1210) * lu(k,1298)
         lu(k,1303) = lu(k,1303) - lu(k,1211) * lu(k,1298)
         lu(k,1305) = lu(k,1305) - lu(k,1212) * lu(k,1298)
         lu(k,1306) = lu(k,1306) - lu(k,1213) * lu(k,1298)
         lu(k,1307) = lu(k,1307) - lu(k,1214) * lu(k,1298)
         lu(k,1308) = lu(k,1308) - lu(k,1215) * lu(k,1298)
         lu(k,1309) = lu(k,1309) - lu(k,1216) * lu(k,1298)
         lu(k,1310) = lu(k,1310) - lu(k,1217) * lu(k,1298)
         lu(k,1311) = lu(k,1311) - lu(k,1218) * lu(k,1298)
         lu(k,1312) = lu(k,1312) - lu(k,1219) * lu(k,1298)
         lu(k,1313) = lu(k,1313) - lu(k,1220) * lu(k,1298)
         lu(k,1314) = lu(k,1314) - lu(k,1221) * lu(k,1298)
         lu(k,1392) = lu(k,1392) - lu(k,1207) * lu(k,1391)
         lu(k,1393) = lu(k,1393) - lu(k,1208) * lu(k,1391)
         lu(k,1394) = lu(k,1394) - lu(k,1209) * lu(k,1391)
         lu(k,1395) = lu(k,1395) - lu(k,1210) * lu(k,1391)
         lu(k,1396) = lu(k,1396) - lu(k,1211) * lu(k,1391)
         lu(k,1398) = lu(k,1398) - lu(k,1212) * lu(k,1391)
         lu(k,1400) = lu(k,1400) - lu(k,1213) * lu(k,1391)
         lu(k,1401) = lu(k,1401) - lu(k,1214) * lu(k,1391)
         lu(k,1402) = lu(k,1402) - lu(k,1215) * lu(k,1391)
         lu(k,1403) = lu(k,1403) - lu(k,1216) * lu(k,1391)
         lu(k,1404) = lu(k,1404) - lu(k,1217) * lu(k,1391)
         lu(k,1405) = lu(k,1405) - lu(k,1218) * lu(k,1391)
         lu(k,1406) = lu(k,1406) - lu(k,1219) * lu(k,1391)
         lu(k,1407) = lu(k,1407) - lu(k,1220) * lu(k,1391)
         lu(k,1409) = lu(k,1409) - lu(k,1221) * lu(k,1391)
         lu(k,1500) = lu(k,1500) - lu(k,1207) * lu(k,1499)
         lu(k,1501) = lu(k,1501) - lu(k,1208) * lu(k,1499)
         lu(k,1502) = lu(k,1502) - lu(k,1209) * lu(k,1499)
         lu(k,1503) = lu(k,1503) - lu(k,1210) * lu(k,1499)
         lu(k,1505) = lu(k,1505) - lu(k,1211) * lu(k,1499)
         lu(k,1507) = lu(k,1507) - lu(k,1212) * lu(k,1499)
         lu(k,1510) = lu(k,1510) - lu(k,1213) * lu(k,1499)
         lu(k,1511) = lu(k,1511) - lu(k,1214) * lu(k,1499)
         lu(k,1513) = lu(k,1513) - lu(k,1215) * lu(k,1499)
         lu(k,1514) = lu(k,1514) - lu(k,1216) * lu(k,1499)
         lu(k,1515) = lu(k,1515) - lu(k,1217) * lu(k,1499)
         lu(k,1516) = lu(k,1516) - lu(k,1218) * lu(k,1499)
         lu(k,1517) = lu(k,1517) - lu(k,1219) * lu(k,1499)
         lu(k,1519) = lu(k,1519) - lu(k,1220) * lu(k,1499)
         lu(k,1521) = lu(k,1521) - lu(k,1221) * lu(k,1499)
         lu(k,1707) = lu(k,1707) - lu(k,1207) * lu(k,1706)
         lu(k,1708) = lu(k,1708) - lu(k,1208) * lu(k,1706)
         lu(k,1709) = lu(k,1709) - lu(k,1209) * lu(k,1706)
         lu(k,1710) = lu(k,1710) - lu(k,1210) * lu(k,1706)
         lu(k,1714) = lu(k,1714) - lu(k,1211) * lu(k,1706)
         lu(k,1716) = lu(k,1716) - lu(k,1212) * lu(k,1706)
         lu(k,1719) = lu(k,1719) - lu(k,1213) * lu(k,1706)
         lu(k,1720) = lu(k,1720) - lu(k,1214) * lu(k,1706)
         lu(k,1722) = lu(k,1722) - lu(k,1215) * lu(k,1706)
         lu(k,1723) = lu(k,1723) - lu(k,1216) * lu(k,1706)
         lu(k,1724) = lu(k,1724) - lu(k,1217) * lu(k,1706)
         lu(k,1725) = lu(k,1725) - lu(k,1218) * lu(k,1706)
         lu(k,1726) = lu(k,1726) - lu(k,1219) * lu(k,1706)
         lu(k,1728) = lu(k,1728) - lu(k,1220) * lu(k,1706)
         lu(k,1730) = lu(k,1730) - lu(k,1221) * lu(k,1706)
         lu(k,1770) = lu(k,1770) - lu(k,1207) * lu(k,1769)
         lu(k,1771) = lu(k,1771) - lu(k,1208) * lu(k,1769)
         lu(k,1772) = lu(k,1772) - lu(k,1209) * lu(k,1769)
         lu(k,1773) = lu(k,1773) - lu(k,1210) * lu(k,1769)
         lu(k,1776) = lu(k,1776) - lu(k,1211) * lu(k,1769)
         lu(k,1778) = lu(k,1778) - lu(k,1212) * lu(k,1769)
         lu(k,1781) = lu(k,1781) - lu(k,1213) * lu(k,1769)
         lu(k,1782) = lu(k,1782) - lu(k,1214) * lu(k,1769)
         lu(k,1784) = lu(k,1784) - lu(k,1215) * lu(k,1769)
         lu(k,1785) = lu(k,1785) - lu(k,1216) * lu(k,1769)
         lu(k,1786) = lu(k,1786) - lu(k,1217) * lu(k,1769)
         lu(k,1787) = lu(k,1787) - lu(k,1218) * lu(k,1769)
         lu(k,1788) = lu(k,1788) - lu(k,1219) * lu(k,1769)
         lu(k,1790) = lu(k,1790) - lu(k,1220) * lu(k,1769)
         lu(k,1792) = lu(k,1792) - lu(k,1221) * lu(k,1769)
         lu(k,1892) = lu(k,1892) - lu(k,1207) * lu(k,1891)
         lu(k,1893) = lu(k,1893) - lu(k,1208) * lu(k,1891)
         lu(k,1894) = lu(k,1894) - lu(k,1209) * lu(k,1891)
         lu(k,1895) = lu(k,1895) - lu(k,1210) * lu(k,1891)
         lu(k,1898) = lu(k,1898) - lu(k,1211) * lu(k,1891)
         lu(k,1900) = lu(k,1900) - lu(k,1212) * lu(k,1891)
         lu(k,1903) = lu(k,1903) - lu(k,1213) * lu(k,1891)
         lu(k,1904) = lu(k,1904) - lu(k,1214) * lu(k,1891)
         lu(k,1906) = lu(k,1906) - lu(k,1215) * lu(k,1891)
         lu(k,1907) = lu(k,1907) - lu(k,1216) * lu(k,1891)
         lu(k,1908) = lu(k,1908) - lu(k,1217) * lu(k,1891)
         lu(k,1909) = lu(k,1909) - lu(k,1218) * lu(k,1891)
         lu(k,1910) = lu(k,1910) - lu(k,1219) * lu(k,1891)
         lu(k,1912) = lu(k,1912) - lu(k,1220) * lu(k,1891)
         lu(k,1914) = lu(k,1914) - lu(k,1221) * lu(k,1891)
         lu(k,2095) = lu(k,2095) - lu(k,1207) * lu(k,2094)
         lu(k,2096) = lu(k,2096) - lu(k,1208) * lu(k,2094)
         lu(k,2097) = lu(k,2097) - lu(k,1209) * lu(k,2094)
         lu(k,2098) = lu(k,2098) - lu(k,1210) * lu(k,2094)
         lu(k,2101) = lu(k,2101) - lu(k,1211) * lu(k,2094)
         lu(k,2103) = lu(k,2103) - lu(k,1212) * lu(k,2094)
         lu(k,2106) = lu(k,2106) - lu(k,1213) * lu(k,2094)
         lu(k,2107) = lu(k,2107) - lu(k,1214) * lu(k,2094)
         lu(k,2109) = lu(k,2109) - lu(k,1215) * lu(k,2094)
         lu(k,2110) = lu(k,2110) - lu(k,1216) * lu(k,2094)
         lu(k,2111) = lu(k,2111) - lu(k,1217) * lu(k,2094)
         lu(k,2112) = lu(k,2112) - lu(k,1218) * lu(k,2094)
         lu(k,2113) = lu(k,2113) - lu(k,1219) * lu(k,2094)
         lu(k,2115) = lu(k,2115) - lu(k,1220) * lu(k,2094)
         lu(k,2117) = lu(k,2117) - lu(k,1221) * lu(k,2094)
      end do
      end subroutine lu_fac24
      subroutine lu_fac25( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1231) = 1._r8 / lu(k,1231)
         lu(k,1232) = lu(k,1232) * lu(k,1231)
         lu(k,1233) = lu(k,1233) * lu(k,1231)
         lu(k,1234) = lu(k,1234) * lu(k,1231)
         lu(k,1235) = lu(k,1235) * lu(k,1231)
         lu(k,1236) = lu(k,1236) * lu(k,1231)
         lu(k,1237) = lu(k,1237) * lu(k,1231)
         lu(k,1238) = lu(k,1238) * lu(k,1231)
         lu(k,1239) = lu(k,1239) * lu(k,1231)
         lu(k,1240) = lu(k,1240) * lu(k,1231)
         lu(k,1241) = lu(k,1241) * lu(k,1231)
         lu(k,1242) = lu(k,1242) * lu(k,1231)
         lu(k,1243) = lu(k,1243) * lu(k,1231)
         lu(k,1252) = - lu(k,1232) * lu(k,1250)
         lu(k,1253) = lu(k,1253) - lu(k,1233) * lu(k,1250)
         lu(k,1254) = lu(k,1254) - lu(k,1234) * lu(k,1250)
         lu(k,1256) = lu(k,1256) - lu(k,1235) * lu(k,1250)
         lu(k,1257) = lu(k,1257) - lu(k,1236) * lu(k,1250)
         lu(k,1259) = lu(k,1259) - lu(k,1237) * lu(k,1250)
         lu(k,1260) = lu(k,1260) - lu(k,1238) * lu(k,1250)
         lu(k,1261) = lu(k,1261) - lu(k,1239) * lu(k,1250)
         lu(k,1262) = lu(k,1262) - lu(k,1240) * lu(k,1250)
         lu(k,1263) = lu(k,1263) - lu(k,1241) * lu(k,1250)
         lu(k,1264) = lu(k,1264) - lu(k,1242) * lu(k,1250)
         lu(k,1265) = lu(k,1265) - lu(k,1243) * lu(k,1250)
         lu(k,1301) = lu(k,1301) - lu(k,1232) * lu(k,1299)
         lu(k,1302) = lu(k,1302) - lu(k,1233) * lu(k,1299)
         lu(k,1303) = lu(k,1303) - lu(k,1234) * lu(k,1299)
         lu(k,1305) = lu(k,1305) - lu(k,1235) * lu(k,1299)
         lu(k,1306) = lu(k,1306) - lu(k,1236) * lu(k,1299)
         lu(k,1308) = lu(k,1308) - lu(k,1237) * lu(k,1299)
         lu(k,1309) = lu(k,1309) - lu(k,1238) * lu(k,1299)
         lu(k,1310) = lu(k,1310) - lu(k,1239) * lu(k,1299)
         lu(k,1311) = lu(k,1311) - lu(k,1240) * lu(k,1299)
         lu(k,1312) = lu(k,1312) - lu(k,1241) * lu(k,1299)
         lu(k,1313) = lu(k,1313) - lu(k,1242) * lu(k,1299)
         lu(k,1314) = lu(k,1314) - lu(k,1243) * lu(k,1299)
         lu(k,1394) = lu(k,1394) - lu(k,1232) * lu(k,1392)
         lu(k,1395) = lu(k,1395) - lu(k,1233) * lu(k,1392)
         lu(k,1396) = lu(k,1396) - lu(k,1234) * lu(k,1392)
         lu(k,1398) = lu(k,1398) - lu(k,1235) * lu(k,1392)
         lu(k,1400) = lu(k,1400) - lu(k,1236) * lu(k,1392)
         lu(k,1402) = lu(k,1402) - lu(k,1237) * lu(k,1392)
         lu(k,1403) = lu(k,1403) - lu(k,1238) * lu(k,1392)
         lu(k,1404) = lu(k,1404) - lu(k,1239) * lu(k,1392)
         lu(k,1405) = lu(k,1405) - lu(k,1240) * lu(k,1392)
         lu(k,1406) = lu(k,1406) - lu(k,1241) * lu(k,1392)
         lu(k,1407) = lu(k,1407) - lu(k,1242) * lu(k,1392)
         lu(k,1409) = lu(k,1409) - lu(k,1243) * lu(k,1392)
         lu(k,1502) = lu(k,1502) - lu(k,1232) * lu(k,1500)
         lu(k,1503) = lu(k,1503) - lu(k,1233) * lu(k,1500)
         lu(k,1505) = lu(k,1505) - lu(k,1234) * lu(k,1500)
         lu(k,1507) = lu(k,1507) - lu(k,1235) * lu(k,1500)
         lu(k,1510) = lu(k,1510) - lu(k,1236) * lu(k,1500)
         lu(k,1513) = lu(k,1513) - lu(k,1237) * lu(k,1500)
         lu(k,1514) = lu(k,1514) - lu(k,1238) * lu(k,1500)
         lu(k,1515) = lu(k,1515) - lu(k,1239) * lu(k,1500)
         lu(k,1516) = lu(k,1516) - lu(k,1240) * lu(k,1500)
         lu(k,1517) = lu(k,1517) - lu(k,1241) * lu(k,1500)
         lu(k,1519) = lu(k,1519) - lu(k,1242) * lu(k,1500)
         lu(k,1521) = lu(k,1521) - lu(k,1243) * lu(k,1500)
         lu(k,1709) = lu(k,1709) - lu(k,1232) * lu(k,1707)
         lu(k,1710) = lu(k,1710) - lu(k,1233) * lu(k,1707)
         lu(k,1714) = lu(k,1714) - lu(k,1234) * lu(k,1707)
         lu(k,1716) = lu(k,1716) - lu(k,1235) * lu(k,1707)
         lu(k,1719) = lu(k,1719) - lu(k,1236) * lu(k,1707)
         lu(k,1722) = lu(k,1722) - lu(k,1237) * lu(k,1707)
         lu(k,1723) = lu(k,1723) - lu(k,1238) * lu(k,1707)
         lu(k,1724) = lu(k,1724) - lu(k,1239) * lu(k,1707)
         lu(k,1725) = lu(k,1725) - lu(k,1240) * lu(k,1707)
         lu(k,1726) = lu(k,1726) - lu(k,1241) * lu(k,1707)
         lu(k,1728) = lu(k,1728) - lu(k,1242) * lu(k,1707)
         lu(k,1730) = lu(k,1730) - lu(k,1243) * lu(k,1707)
         lu(k,1772) = lu(k,1772) - lu(k,1232) * lu(k,1770)
         lu(k,1773) = lu(k,1773) - lu(k,1233) * lu(k,1770)
         lu(k,1776) = lu(k,1776) - lu(k,1234) * lu(k,1770)
         lu(k,1778) = lu(k,1778) - lu(k,1235) * lu(k,1770)
         lu(k,1781) = lu(k,1781) - lu(k,1236) * lu(k,1770)
         lu(k,1784) = lu(k,1784) - lu(k,1237) * lu(k,1770)
         lu(k,1785) = lu(k,1785) - lu(k,1238) * lu(k,1770)
         lu(k,1786) = lu(k,1786) - lu(k,1239) * lu(k,1770)
         lu(k,1787) = lu(k,1787) - lu(k,1240) * lu(k,1770)
         lu(k,1788) = lu(k,1788) - lu(k,1241) * lu(k,1770)
         lu(k,1790) = lu(k,1790) - lu(k,1242) * lu(k,1770)
         lu(k,1792) = lu(k,1792) - lu(k,1243) * lu(k,1770)
         lu(k,1894) = lu(k,1894) - lu(k,1232) * lu(k,1892)
         lu(k,1895) = lu(k,1895) - lu(k,1233) * lu(k,1892)
         lu(k,1898) = lu(k,1898) - lu(k,1234) * lu(k,1892)
         lu(k,1900) = lu(k,1900) - lu(k,1235) * lu(k,1892)
         lu(k,1903) = lu(k,1903) - lu(k,1236) * lu(k,1892)
         lu(k,1906) = lu(k,1906) - lu(k,1237) * lu(k,1892)
         lu(k,1907) = lu(k,1907) - lu(k,1238) * lu(k,1892)
         lu(k,1908) = lu(k,1908) - lu(k,1239) * lu(k,1892)
         lu(k,1909) = lu(k,1909) - lu(k,1240) * lu(k,1892)
         lu(k,1910) = lu(k,1910) - lu(k,1241) * lu(k,1892)
         lu(k,1912) = lu(k,1912) - lu(k,1242) * lu(k,1892)
         lu(k,1914) = lu(k,1914) - lu(k,1243) * lu(k,1892)
         lu(k,2097) = lu(k,2097) - lu(k,1232) * lu(k,2095)
         lu(k,2098) = lu(k,2098) - lu(k,1233) * lu(k,2095)
         lu(k,2101) = lu(k,2101) - lu(k,1234) * lu(k,2095)
         lu(k,2103) = lu(k,2103) - lu(k,1235) * lu(k,2095)
         lu(k,2106) = lu(k,2106) - lu(k,1236) * lu(k,2095)
         lu(k,2109) = lu(k,2109) - lu(k,1237) * lu(k,2095)
         lu(k,2110) = lu(k,2110) - lu(k,1238) * lu(k,2095)
         lu(k,2111) = lu(k,2111) - lu(k,1239) * lu(k,2095)
         lu(k,2112) = lu(k,2112) - lu(k,1240) * lu(k,2095)
         lu(k,2113) = lu(k,2113) - lu(k,1241) * lu(k,2095)
         lu(k,2115) = lu(k,2115) - lu(k,1242) * lu(k,2095)
         lu(k,2117) = lu(k,2117) - lu(k,1243) * lu(k,2095)
         lu(k,1251) = 1._r8 / lu(k,1251)
         lu(k,1252) = lu(k,1252) * lu(k,1251)
         lu(k,1253) = lu(k,1253) * lu(k,1251)
         lu(k,1254) = lu(k,1254) * lu(k,1251)
         lu(k,1255) = lu(k,1255) * lu(k,1251)
         lu(k,1256) = lu(k,1256) * lu(k,1251)
         lu(k,1257) = lu(k,1257) * lu(k,1251)
         lu(k,1258) = lu(k,1258) * lu(k,1251)
         lu(k,1259) = lu(k,1259) * lu(k,1251)
         lu(k,1260) = lu(k,1260) * lu(k,1251)
         lu(k,1261) = lu(k,1261) * lu(k,1251)
         lu(k,1262) = lu(k,1262) * lu(k,1251)
         lu(k,1263) = lu(k,1263) * lu(k,1251)
         lu(k,1264) = lu(k,1264) * lu(k,1251)
         lu(k,1265) = lu(k,1265) * lu(k,1251)
         lu(k,1301) = lu(k,1301) - lu(k,1252) * lu(k,1300)
         lu(k,1302) = lu(k,1302) - lu(k,1253) * lu(k,1300)
         lu(k,1303) = lu(k,1303) - lu(k,1254) * lu(k,1300)
         lu(k,1304) = - lu(k,1255) * lu(k,1300)
         lu(k,1305) = lu(k,1305) - lu(k,1256) * lu(k,1300)
         lu(k,1306) = lu(k,1306) - lu(k,1257) * lu(k,1300)
         lu(k,1307) = lu(k,1307) - lu(k,1258) * lu(k,1300)
         lu(k,1308) = lu(k,1308) - lu(k,1259) * lu(k,1300)
         lu(k,1309) = lu(k,1309) - lu(k,1260) * lu(k,1300)
         lu(k,1310) = lu(k,1310) - lu(k,1261) * lu(k,1300)
         lu(k,1311) = lu(k,1311) - lu(k,1262) * lu(k,1300)
         lu(k,1312) = lu(k,1312) - lu(k,1263) * lu(k,1300)
         lu(k,1313) = lu(k,1313) - lu(k,1264) * lu(k,1300)
         lu(k,1314) = lu(k,1314) - lu(k,1265) * lu(k,1300)
         lu(k,1394) = lu(k,1394) - lu(k,1252) * lu(k,1393)
         lu(k,1395) = lu(k,1395) - lu(k,1253) * lu(k,1393)
         lu(k,1396) = lu(k,1396) - lu(k,1254) * lu(k,1393)
         lu(k,1397) = lu(k,1397) - lu(k,1255) * lu(k,1393)
         lu(k,1398) = lu(k,1398) - lu(k,1256) * lu(k,1393)
         lu(k,1400) = lu(k,1400) - lu(k,1257) * lu(k,1393)
         lu(k,1401) = lu(k,1401) - lu(k,1258) * lu(k,1393)
         lu(k,1402) = lu(k,1402) - lu(k,1259) * lu(k,1393)
         lu(k,1403) = lu(k,1403) - lu(k,1260) * lu(k,1393)
         lu(k,1404) = lu(k,1404) - lu(k,1261) * lu(k,1393)
         lu(k,1405) = lu(k,1405) - lu(k,1262) * lu(k,1393)
         lu(k,1406) = lu(k,1406) - lu(k,1263) * lu(k,1393)
         lu(k,1407) = lu(k,1407) - lu(k,1264) * lu(k,1393)
         lu(k,1409) = lu(k,1409) - lu(k,1265) * lu(k,1393)
         lu(k,1502) = lu(k,1502) - lu(k,1252) * lu(k,1501)
         lu(k,1503) = lu(k,1503) - lu(k,1253) * lu(k,1501)
         lu(k,1505) = lu(k,1505) - lu(k,1254) * lu(k,1501)
         lu(k,1506) = lu(k,1506) - lu(k,1255) * lu(k,1501)
         lu(k,1507) = lu(k,1507) - lu(k,1256) * lu(k,1501)
         lu(k,1510) = lu(k,1510) - lu(k,1257) * lu(k,1501)
         lu(k,1511) = lu(k,1511) - lu(k,1258) * lu(k,1501)
         lu(k,1513) = lu(k,1513) - lu(k,1259) * lu(k,1501)
         lu(k,1514) = lu(k,1514) - lu(k,1260) * lu(k,1501)
         lu(k,1515) = lu(k,1515) - lu(k,1261) * lu(k,1501)
         lu(k,1516) = lu(k,1516) - lu(k,1262) * lu(k,1501)
         lu(k,1517) = lu(k,1517) - lu(k,1263) * lu(k,1501)
         lu(k,1519) = lu(k,1519) - lu(k,1264) * lu(k,1501)
         lu(k,1521) = lu(k,1521) - lu(k,1265) * lu(k,1501)
         lu(k,1709) = lu(k,1709) - lu(k,1252) * lu(k,1708)
         lu(k,1710) = lu(k,1710) - lu(k,1253) * lu(k,1708)
         lu(k,1714) = lu(k,1714) - lu(k,1254) * lu(k,1708)
         lu(k,1715) = lu(k,1715) - lu(k,1255) * lu(k,1708)
         lu(k,1716) = lu(k,1716) - lu(k,1256) * lu(k,1708)
         lu(k,1719) = lu(k,1719) - lu(k,1257) * lu(k,1708)
         lu(k,1720) = lu(k,1720) - lu(k,1258) * lu(k,1708)
         lu(k,1722) = lu(k,1722) - lu(k,1259) * lu(k,1708)
         lu(k,1723) = lu(k,1723) - lu(k,1260) * lu(k,1708)
         lu(k,1724) = lu(k,1724) - lu(k,1261) * lu(k,1708)
         lu(k,1725) = lu(k,1725) - lu(k,1262) * lu(k,1708)
         lu(k,1726) = lu(k,1726) - lu(k,1263) * lu(k,1708)
         lu(k,1728) = lu(k,1728) - lu(k,1264) * lu(k,1708)
         lu(k,1730) = lu(k,1730) - lu(k,1265) * lu(k,1708)
         lu(k,1772) = lu(k,1772) - lu(k,1252) * lu(k,1771)
         lu(k,1773) = lu(k,1773) - lu(k,1253) * lu(k,1771)
         lu(k,1776) = lu(k,1776) - lu(k,1254) * lu(k,1771)
         lu(k,1777) = lu(k,1777) - lu(k,1255) * lu(k,1771)
         lu(k,1778) = lu(k,1778) - lu(k,1256) * lu(k,1771)
         lu(k,1781) = lu(k,1781) - lu(k,1257) * lu(k,1771)
         lu(k,1782) = lu(k,1782) - lu(k,1258) * lu(k,1771)
         lu(k,1784) = lu(k,1784) - lu(k,1259) * lu(k,1771)
         lu(k,1785) = lu(k,1785) - lu(k,1260) * lu(k,1771)
         lu(k,1786) = lu(k,1786) - lu(k,1261) * lu(k,1771)
         lu(k,1787) = lu(k,1787) - lu(k,1262) * lu(k,1771)
         lu(k,1788) = lu(k,1788) - lu(k,1263) * lu(k,1771)
         lu(k,1790) = lu(k,1790) - lu(k,1264) * lu(k,1771)
         lu(k,1792) = lu(k,1792) - lu(k,1265) * lu(k,1771)
         lu(k,1894) = lu(k,1894) - lu(k,1252) * lu(k,1893)
         lu(k,1895) = lu(k,1895) - lu(k,1253) * lu(k,1893)
         lu(k,1898) = lu(k,1898) - lu(k,1254) * lu(k,1893)
         lu(k,1899) = lu(k,1899) - lu(k,1255) * lu(k,1893)
         lu(k,1900) = lu(k,1900) - lu(k,1256) * lu(k,1893)
         lu(k,1903) = lu(k,1903) - lu(k,1257) * lu(k,1893)
         lu(k,1904) = lu(k,1904) - lu(k,1258) * lu(k,1893)
         lu(k,1906) = lu(k,1906) - lu(k,1259) * lu(k,1893)
         lu(k,1907) = lu(k,1907) - lu(k,1260) * lu(k,1893)
         lu(k,1908) = lu(k,1908) - lu(k,1261) * lu(k,1893)
         lu(k,1909) = lu(k,1909) - lu(k,1262) * lu(k,1893)
         lu(k,1910) = lu(k,1910) - lu(k,1263) * lu(k,1893)
         lu(k,1912) = lu(k,1912) - lu(k,1264) * lu(k,1893)
         lu(k,1914) = lu(k,1914) - lu(k,1265) * lu(k,1893)
         lu(k,2097) = lu(k,2097) - lu(k,1252) * lu(k,2096)
         lu(k,2098) = lu(k,2098) - lu(k,1253) * lu(k,2096)
         lu(k,2101) = lu(k,2101) - lu(k,1254) * lu(k,2096)
         lu(k,2102) = lu(k,2102) - lu(k,1255) * lu(k,2096)
         lu(k,2103) = lu(k,2103) - lu(k,1256) * lu(k,2096)
         lu(k,2106) = lu(k,2106) - lu(k,1257) * lu(k,2096)
         lu(k,2107) = lu(k,2107) - lu(k,1258) * lu(k,2096)
         lu(k,2109) = lu(k,2109) - lu(k,1259) * lu(k,2096)
         lu(k,2110) = lu(k,2110) - lu(k,1260) * lu(k,2096)
         lu(k,2111) = lu(k,2111) - lu(k,1261) * lu(k,2096)
         lu(k,2112) = lu(k,2112) - lu(k,1262) * lu(k,2096)
         lu(k,2113) = lu(k,2113) - lu(k,1263) * lu(k,2096)
         lu(k,2115) = lu(k,2115) - lu(k,1264) * lu(k,2096)
         lu(k,2117) = lu(k,2117) - lu(k,1265) * lu(k,2096)
         lu(k,1271) = 1._r8 / lu(k,1271)
         lu(k,1272) = lu(k,1272) * lu(k,1271)
         lu(k,1273) = lu(k,1273) * lu(k,1271)
         lu(k,1274) = lu(k,1274) * lu(k,1271)
         lu(k,1275) = lu(k,1275) * lu(k,1271)
         lu(k,1276) = lu(k,1276) * lu(k,1271)
         lu(k,1277) = lu(k,1277) * lu(k,1271)
         lu(k,1278) = lu(k,1278) * lu(k,1271)
         lu(k,1279) = lu(k,1279) * lu(k,1271)
         lu(k,1280) = lu(k,1280) * lu(k,1271)
         lu(k,1281) = lu(k,1281) * lu(k,1271)
         lu(k,1282) = lu(k,1282) * lu(k,1271)
         lu(k,1283) = lu(k,1283) * lu(k,1271)
         lu(k,1302) = lu(k,1302) - lu(k,1272) * lu(k,1301)
         lu(k,1303) = lu(k,1303) - lu(k,1273) * lu(k,1301)
         lu(k,1305) = lu(k,1305) - lu(k,1274) * lu(k,1301)
         lu(k,1306) = lu(k,1306) - lu(k,1275) * lu(k,1301)
         lu(k,1307) = lu(k,1307) - lu(k,1276) * lu(k,1301)
         lu(k,1308) = lu(k,1308) - lu(k,1277) * lu(k,1301)
         lu(k,1309) = lu(k,1309) - lu(k,1278) * lu(k,1301)
         lu(k,1310) = lu(k,1310) - lu(k,1279) * lu(k,1301)
         lu(k,1311) = lu(k,1311) - lu(k,1280) * lu(k,1301)
         lu(k,1312) = lu(k,1312) - lu(k,1281) * lu(k,1301)
         lu(k,1313) = lu(k,1313) - lu(k,1282) * lu(k,1301)
         lu(k,1314) = lu(k,1314) - lu(k,1283) * lu(k,1301)
         lu(k,1395) = lu(k,1395) - lu(k,1272) * lu(k,1394)
         lu(k,1396) = lu(k,1396) - lu(k,1273) * lu(k,1394)
         lu(k,1398) = lu(k,1398) - lu(k,1274) * lu(k,1394)
         lu(k,1400) = lu(k,1400) - lu(k,1275) * lu(k,1394)
         lu(k,1401) = lu(k,1401) - lu(k,1276) * lu(k,1394)
         lu(k,1402) = lu(k,1402) - lu(k,1277) * lu(k,1394)
         lu(k,1403) = lu(k,1403) - lu(k,1278) * lu(k,1394)
         lu(k,1404) = lu(k,1404) - lu(k,1279) * lu(k,1394)
         lu(k,1405) = lu(k,1405) - lu(k,1280) * lu(k,1394)
         lu(k,1406) = lu(k,1406) - lu(k,1281) * lu(k,1394)
         lu(k,1407) = lu(k,1407) - lu(k,1282) * lu(k,1394)
         lu(k,1409) = lu(k,1409) - lu(k,1283) * lu(k,1394)
         lu(k,1503) = lu(k,1503) - lu(k,1272) * lu(k,1502)
         lu(k,1505) = lu(k,1505) - lu(k,1273) * lu(k,1502)
         lu(k,1507) = lu(k,1507) - lu(k,1274) * lu(k,1502)
         lu(k,1510) = lu(k,1510) - lu(k,1275) * lu(k,1502)
         lu(k,1511) = lu(k,1511) - lu(k,1276) * lu(k,1502)
         lu(k,1513) = lu(k,1513) - lu(k,1277) * lu(k,1502)
         lu(k,1514) = lu(k,1514) - lu(k,1278) * lu(k,1502)
         lu(k,1515) = lu(k,1515) - lu(k,1279) * lu(k,1502)
         lu(k,1516) = lu(k,1516) - lu(k,1280) * lu(k,1502)
         lu(k,1517) = lu(k,1517) - lu(k,1281) * lu(k,1502)
         lu(k,1519) = lu(k,1519) - lu(k,1282) * lu(k,1502)
         lu(k,1521) = lu(k,1521) - lu(k,1283) * lu(k,1502)
         lu(k,1710) = lu(k,1710) - lu(k,1272) * lu(k,1709)
         lu(k,1714) = lu(k,1714) - lu(k,1273) * lu(k,1709)
         lu(k,1716) = lu(k,1716) - lu(k,1274) * lu(k,1709)
         lu(k,1719) = lu(k,1719) - lu(k,1275) * lu(k,1709)
         lu(k,1720) = lu(k,1720) - lu(k,1276) * lu(k,1709)
         lu(k,1722) = lu(k,1722) - lu(k,1277) * lu(k,1709)
         lu(k,1723) = lu(k,1723) - lu(k,1278) * lu(k,1709)
         lu(k,1724) = lu(k,1724) - lu(k,1279) * lu(k,1709)
         lu(k,1725) = lu(k,1725) - lu(k,1280) * lu(k,1709)
         lu(k,1726) = lu(k,1726) - lu(k,1281) * lu(k,1709)
         lu(k,1728) = lu(k,1728) - lu(k,1282) * lu(k,1709)
         lu(k,1730) = lu(k,1730) - lu(k,1283) * lu(k,1709)
         lu(k,1773) = lu(k,1773) - lu(k,1272) * lu(k,1772)
         lu(k,1776) = lu(k,1776) - lu(k,1273) * lu(k,1772)
         lu(k,1778) = lu(k,1778) - lu(k,1274) * lu(k,1772)
         lu(k,1781) = lu(k,1781) - lu(k,1275) * lu(k,1772)
         lu(k,1782) = lu(k,1782) - lu(k,1276) * lu(k,1772)
         lu(k,1784) = lu(k,1784) - lu(k,1277) * lu(k,1772)
         lu(k,1785) = lu(k,1785) - lu(k,1278) * lu(k,1772)
         lu(k,1786) = lu(k,1786) - lu(k,1279) * lu(k,1772)
         lu(k,1787) = lu(k,1787) - lu(k,1280) * lu(k,1772)
         lu(k,1788) = lu(k,1788) - lu(k,1281) * lu(k,1772)
         lu(k,1790) = lu(k,1790) - lu(k,1282) * lu(k,1772)
         lu(k,1792) = lu(k,1792) - lu(k,1283) * lu(k,1772)
         lu(k,1895) = lu(k,1895) - lu(k,1272) * lu(k,1894)
         lu(k,1898) = lu(k,1898) - lu(k,1273) * lu(k,1894)
         lu(k,1900) = lu(k,1900) - lu(k,1274) * lu(k,1894)
         lu(k,1903) = lu(k,1903) - lu(k,1275) * lu(k,1894)
         lu(k,1904) = lu(k,1904) - lu(k,1276) * lu(k,1894)
         lu(k,1906) = lu(k,1906) - lu(k,1277) * lu(k,1894)
         lu(k,1907) = lu(k,1907) - lu(k,1278) * lu(k,1894)
         lu(k,1908) = lu(k,1908) - lu(k,1279) * lu(k,1894)
         lu(k,1909) = lu(k,1909) - lu(k,1280) * lu(k,1894)
         lu(k,1910) = lu(k,1910) - lu(k,1281) * lu(k,1894)
         lu(k,1912) = lu(k,1912) - lu(k,1282) * lu(k,1894)
         lu(k,1914) = lu(k,1914) - lu(k,1283) * lu(k,1894)
         lu(k,1978) = lu(k,1978) - lu(k,1272) * lu(k,1977)
         lu(k,1982) = lu(k,1982) - lu(k,1273) * lu(k,1977)
         lu(k,1984) = lu(k,1984) - lu(k,1274) * lu(k,1977)
         lu(k,1987) = lu(k,1987) - lu(k,1275) * lu(k,1977)
         lu(k,1988) = lu(k,1988) - lu(k,1276) * lu(k,1977)
         lu(k,1990) = lu(k,1990) - lu(k,1277) * lu(k,1977)
         lu(k,1991) = lu(k,1991) - lu(k,1278) * lu(k,1977)
         lu(k,1992) = lu(k,1992) - lu(k,1279) * lu(k,1977)
         lu(k,1993) = lu(k,1993) - lu(k,1280) * lu(k,1977)
         lu(k,1994) = lu(k,1994) - lu(k,1281) * lu(k,1977)
         lu(k,1996) = lu(k,1996) - lu(k,1282) * lu(k,1977)
         lu(k,1998) = lu(k,1998) - lu(k,1283) * lu(k,1977)
         lu(k,2098) = lu(k,2098) - lu(k,1272) * lu(k,2097)
         lu(k,2101) = lu(k,2101) - lu(k,1273) * lu(k,2097)
         lu(k,2103) = lu(k,2103) - lu(k,1274) * lu(k,2097)
         lu(k,2106) = lu(k,2106) - lu(k,1275) * lu(k,2097)
         lu(k,2107) = lu(k,2107) - lu(k,1276) * lu(k,2097)
         lu(k,2109) = lu(k,2109) - lu(k,1277) * lu(k,2097)
         lu(k,2110) = lu(k,2110) - lu(k,1278) * lu(k,2097)
         lu(k,2111) = lu(k,2111) - lu(k,1279) * lu(k,2097)
         lu(k,2112) = lu(k,2112) - lu(k,1280) * lu(k,2097)
         lu(k,2113) = lu(k,2113) - lu(k,1281) * lu(k,2097)
         lu(k,2115) = lu(k,2115) - lu(k,1282) * lu(k,2097)
         lu(k,2117) = lu(k,2117) - lu(k,1283) * lu(k,2097)
         lu(k,1302) = 1._r8 / lu(k,1302)
         lu(k,1303) = lu(k,1303) * lu(k,1302)
         lu(k,1304) = lu(k,1304) * lu(k,1302)
         lu(k,1305) = lu(k,1305) * lu(k,1302)
         lu(k,1306) = lu(k,1306) * lu(k,1302)
         lu(k,1307) = lu(k,1307) * lu(k,1302)
         lu(k,1308) = lu(k,1308) * lu(k,1302)
         lu(k,1309) = lu(k,1309) * lu(k,1302)
         lu(k,1310) = lu(k,1310) * lu(k,1302)
         lu(k,1311) = lu(k,1311) * lu(k,1302)
         lu(k,1312) = lu(k,1312) * lu(k,1302)
         lu(k,1313) = lu(k,1313) * lu(k,1302)
         lu(k,1314) = lu(k,1314) * lu(k,1302)
         lu(k,1396) = lu(k,1396) - lu(k,1303) * lu(k,1395)
         lu(k,1397) = lu(k,1397) - lu(k,1304) * lu(k,1395)
         lu(k,1398) = lu(k,1398) - lu(k,1305) * lu(k,1395)
         lu(k,1400) = lu(k,1400) - lu(k,1306) * lu(k,1395)
         lu(k,1401) = lu(k,1401) - lu(k,1307) * lu(k,1395)
         lu(k,1402) = lu(k,1402) - lu(k,1308) * lu(k,1395)
         lu(k,1403) = lu(k,1403) - lu(k,1309) * lu(k,1395)
         lu(k,1404) = lu(k,1404) - lu(k,1310) * lu(k,1395)
         lu(k,1405) = lu(k,1405) - lu(k,1311) * lu(k,1395)
         lu(k,1406) = lu(k,1406) - lu(k,1312) * lu(k,1395)
         lu(k,1407) = lu(k,1407) - lu(k,1313) * lu(k,1395)
         lu(k,1409) = lu(k,1409) - lu(k,1314) * lu(k,1395)
         lu(k,1505) = lu(k,1505) - lu(k,1303) * lu(k,1503)
         lu(k,1506) = lu(k,1506) - lu(k,1304) * lu(k,1503)
         lu(k,1507) = lu(k,1507) - lu(k,1305) * lu(k,1503)
         lu(k,1510) = lu(k,1510) - lu(k,1306) * lu(k,1503)
         lu(k,1511) = lu(k,1511) - lu(k,1307) * lu(k,1503)
         lu(k,1513) = lu(k,1513) - lu(k,1308) * lu(k,1503)
         lu(k,1514) = lu(k,1514) - lu(k,1309) * lu(k,1503)
         lu(k,1515) = lu(k,1515) - lu(k,1310) * lu(k,1503)
         lu(k,1516) = lu(k,1516) - lu(k,1311) * lu(k,1503)
         lu(k,1517) = lu(k,1517) - lu(k,1312) * lu(k,1503)
         lu(k,1519) = lu(k,1519) - lu(k,1313) * lu(k,1503)
         lu(k,1521) = lu(k,1521) - lu(k,1314) * lu(k,1503)
         lu(k,1540) = lu(k,1540) - lu(k,1303) * lu(k,1537)
         lu(k,1541) = lu(k,1541) - lu(k,1304) * lu(k,1537)
         lu(k,1542) = lu(k,1542) - lu(k,1305) * lu(k,1537)
         lu(k,1545) = lu(k,1545) - lu(k,1306) * lu(k,1537)
         lu(k,1546) = lu(k,1546) - lu(k,1307) * lu(k,1537)
         lu(k,1548) = lu(k,1548) - lu(k,1308) * lu(k,1537)
         lu(k,1549) = lu(k,1549) - lu(k,1309) * lu(k,1537)
         lu(k,1550) = lu(k,1550) - lu(k,1310) * lu(k,1537)
         lu(k,1551) = lu(k,1551) - lu(k,1311) * lu(k,1537)
         lu(k,1552) = lu(k,1552) - lu(k,1312) * lu(k,1537)
         lu(k,1554) = lu(k,1554) - lu(k,1313) * lu(k,1537)
         lu(k,1556) = lu(k,1556) - lu(k,1314) * lu(k,1537)
         lu(k,1714) = lu(k,1714) - lu(k,1303) * lu(k,1710)
         lu(k,1715) = lu(k,1715) - lu(k,1304) * lu(k,1710)
         lu(k,1716) = lu(k,1716) - lu(k,1305) * lu(k,1710)
         lu(k,1719) = lu(k,1719) - lu(k,1306) * lu(k,1710)
         lu(k,1720) = lu(k,1720) - lu(k,1307) * lu(k,1710)
         lu(k,1722) = lu(k,1722) - lu(k,1308) * lu(k,1710)
         lu(k,1723) = lu(k,1723) - lu(k,1309) * lu(k,1710)
         lu(k,1724) = lu(k,1724) - lu(k,1310) * lu(k,1710)
         lu(k,1725) = lu(k,1725) - lu(k,1311) * lu(k,1710)
         lu(k,1726) = lu(k,1726) - lu(k,1312) * lu(k,1710)
         lu(k,1728) = lu(k,1728) - lu(k,1313) * lu(k,1710)
         lu(k,1730) = lu(k,1730) - lu(k,1314) * lu(k,1710)
         lu(k,1776) = lu(k,1776) - lu(k,1303) * lu(k,1773)
         lu(k,1777) = lu(k,1777) - lu(k,1304) * lu(k,1773)
         lu(k,1778) = lu(k,1778) - lu(k,1305) * lu(k,1773)
         lu(k,1781) = lu(k,1781) - lu(k,1306) * lu(k,1773)
         lu(k,1782) = lu(k,1782) - lu(k,1307) * lu(k,1773)
         lu(k,1784) = lu(k,1784) - lu(k,1308) * lu(k,1773)
         lu(k,1785) = lu(k,1785) - lu(k,1309) * lu(k,1773)
         lu(k,1786) = lu(k,1786) - lu(k,1310) * lu(k,1773)
         lu(k,1787) = lu(k,1787) - lu(k,1311) * lu(k,1773)
         lu(k,1788) = lu(k,1788) - lu(k,1312) * lu(k,1773)
         lu(k,1790) = lu(k,1790) - lu(k,1313) * lu(k,1773)
         lu(k,1792) = lu(k,1792) - lu(k,1314) * lu(k,1773)
         lu(k,1898) = lu(k,1898) - lu(k,1303) * lu(k,1895)
         lu(k,1899) = lu(k,1899) - lu(k,1304) * lu(k,1895)
         lu(k,1900) = lu(k,1900) - lu(k,1305) * lu(k,1895)
         lu(k,1903) = lu(k,1903) - lu(k,1306) * lu(k,1895)
         lu(k,1904) = lu(k,1904) - lu(k,1307) * lu(k,1895)
         lu(k,1906) = lu(k,1906) - lu(k,1308) * lu(k,1895)
         lu(k,1907) = lu(k,1907) - lu(k,1309) * lu(k,1895)
         lu(k,1908) = lu(k,1908) - lu(k,1310) * lu(k,1895)
         lu(k,1909) = lu(k,1909) - lu(k,1311) * lu(k,1895)
         lu(k,1910) = lu(k,1910) - lu(k,1312) * lu(k,1895)
         lu(k,1912) = lu(k,1912) - lu(k,1313) * lu(k,1895)
         lu(k,1914) = lu(k,1914) - lu(k,1314) * lu(k,1895)
         lu(k,1982) = lu(k,1982) - lu(k,1303) * lu(k,1978)
         lu(k,1983) = lu(k,1983) - lu(k,1304) * lu(k,1978)
         lu(k,1984) = lu(k,1984) - lu(k,1305) * lu(k,1978)
         lu(k,1987) = lu(k,1987) - lu(k,1306) * lu(k,1978)
         lu(k,1988) = lu(k,1988) - lu(k,1307) * lu(k,1978)
         lu(k,1990) = lu(k,1990) - lu(k,1308) * lu(k,1978)
         lu(k,1991) = lu(k,1991) - lu(k,1309) * lu(k,1978)
         lu(k,1992) = lu(k,1992) - lu(k,1310) * lu(k,1978)
         lu(k,1993) = lu(k,1993) - lu(k,1311) * lu(k,1978)
         lu(k,1994) = lu(k,1994) - lu(k,1312) * lu(k,1978)
         lu(k,1996) = lu(k,1996) - lu(k,1313) * lu(k,1978)
         lu(k,1998) = lu(k,1998) - lu(k,1314) * lu(k,1978)
         lu(k,2101) = lu(k,2101) - lu(k,1303) * lu(k,2098)
         lu(k,2102) = lu(k,2102) - lu(k,1304) * lu(k,2098)
         lu(k,2103) = lu(k,2103) - lu(k,1305) * lu(k,2098)
         lu(k,2106) = lu(k,2106) - lu(k,1306) * lu(k,2098)
         lu(k,2107) = lu(k,2107) - lu(k,1307) * lu(k,2098)
         lu(k,2109) = lu(k,2109) - lu(k,1308) * lu(k,2098)
         lu(k,2110) = lu(k,2110) - lu(k,1309) * lu(k,2098)
         lu(k,2111) = lu(k,2111) - lu(k,1310) * lu(k,2098)
         lu(k,2112) = lu(k,2112) - lu(k,1311) * lu(k,2098)
         lu(k,2113) = lu(k,2113) - lu(k,1312) * lu(k,2098)
         lu(k,2115) = lu(k,2115) - lu(k,1313) * lu(k,2098)
         lu(k,2117) = lu(k,2117) - lu(k,1314) * lu(k,2098)
      end do
      end subroutine lu_fac25
      subroutine lu_fac26( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1318) = 1._r8 / lu(k,1318)
         lu(k,1319) = lu(k,1319) * lu(k,1318)
         lu(k,1320) = lu(k,1320) * lu(k,1318)
         lu(k,1321) = lu(k,1321) * lu(k,1318)
         lu(k,1322) = lu(k,1322) * lu(k,1318)
         lu(k,1323) = lu(k,1323) * lu(k,1318)
         lu(k,1324) = lu(k,1324) * lu(k,1318)
         lu(k,1325) = lu(k,1325) * lu(k,1318)
         lu(k,1326) = lu(k,1326) * lu(k,1318)
         lu(k,1327) = lu(k,1327) * lu(k,1318)
         lu(k,1328) = lu(k,1328) * lu(k,1318)
         lu(k,1329) = lu(k,1329) * lu(k,1318)
         lu(k,1330) = lu(k,1330) * lu(k,1318)
         lu(k,1331) = lu(k,1331) * lu(k,1318)
         lu(k,1426) = - lu(k,1319) * lu(k,1425)
         lu(k,1427) = lu(k,1427) - lu(k,1320) * lu(k,1425)
         lu(k,1428) = lu(k,1428) - lu(k,1321) * lu(k,1425)
         lu(k,1429) = - lu(k,1322) * lu(k,1425)
         lu(k,1431) = lu(k,1431) - lu(k,1323) * lu(k,1425)
         lu(k,1432) = lu(k,1432) - lu(k,1324) * lu(k,1425)
         lu(k,1433) = lu(k,1433) - lu(k,1325) * lu(k,1425)
         lu(k,1435) = lu(k,1435) - lu(k,1326) * lu(k,1425)
         lu(k,1436) = lu(k,1436) - lu(k,1327) * lu(k,1425)
         lu(k,1437) = - lu(k,1328) * lu(k,1425)
         lu(k,1438) = lu(k,1438) - lu(k,1329) * lu(k,1425)
         lu(k,1439) = - lu(k,1330) * lu(k,1425)
         lu(k,1440) = lu(k,1440) - lu(k,1331) * lu(k,1425)
         lu(k,1713) = lu(k,1713) - lu(k,1319) * lu(k,1711)
         lu(k,1715) = lu(k,1715) - lu(k,1320) * lu(k,1711)
         lu(k,1716) = lu(k,1716) - lu(k,1321) * lu(k,1711)
         lu(k,1717) = lu(k,1717) - lu(k,1322) * lu(k,1711)
         lu(k,1719) = lu(k,1719) - lu(k,1323) * lu(k,1711)
         lu(k,1720) = lu(k,1720) - lu(k,1324) * lu(k,1711)
         lu(k,1721) = lu(k,1721) - lu(k,1325) * lu(k,1711)
         lu(k,1724) = lu(k,1724) - lu(k,1326) * lu(k,1711)
         lu(k,1726) = lu(k,1726) - lu(k,1327) * lu(k,1711)
         lu(k,1727) = lu(k,1727) - lu(k,1328) * lu(k,1711)
         lu(k,1728) = lu(k,1728) - lu(k,1329) * lu(k,1711)
         lu(k,1729) = lu(k,1729) - lu(k,1330) * lu(k,1711)
         lu(k,1730) = lu(k,1730) - lu(k,1331) * lu(k,1711)
         lu(k,1775) = lu(k,1775) - lu(k,1319) * lu(k,1774)
         lu(k,1777) = lu(k,1777) - lu(k,1320) * lu(k,1774)
         lu(k,1778) = lu(k,1778) - lu(k,1321) * lu(k,1774)
         lu(k,1779) = lu(k,1779) - lu(k,1322) * lu(k,1774)
         lu(k,1781) = lu(k,1781) - lu(k,1323) * lu(k,1774)
         lu(k,1782) = lu(k,1782) - lu(k,1324) * lu(k,1774)
         lu(k,1783) = lu(k,1783) - lu(k,1325) * lu(k,1774)
         lu(k,1786) = lu(k,1786) - lu(k,1326) * lu(k,1774)
         lu(k,1788) = lu(k,1788) - lu(k,1327) * lu(k,1774)
         lu(k,1789) = lu(k,1789) - lu(k,1328) * lu(k,1774)
         lu(k,1790) = lu(k,1790) - lu(k,1329) * lu(k,1774)
         lu(k,1791) = lu(k,1791) - lu(k,1330) * lu(k,1774)
         lu(k,1792) = lu(k,1792) - lu(k,1331) * lu(k,1774)
         lu(k,1816) = lu(k,1816) - lu(k,1319) * lu(k,1814)
         lu(k,1818) = lu(k,1818) - lu(k,1320) * lu(k,1814)
         lu(k,1819) = lu(k,1819) - lu(k,1321) * lu(k,1814)
         lu(k,1820) = lu(k,1820) - lu(k,1322) * lu(k,1814)
         lu(k,1822) = lu(k,1822) - lu(k,1323) * lu(k,1814)
         lu(k,1823) = lu(k,1823) - lu(k,1324) * lu(k,1814)
         lu(k,1824) = lu(k,1824) - lu(k,1325) * lu(k,1814)
         lu(k,1827) = lu(k,1827) - lu(k,1326) * lu(k,1814)
         lu(k,1829) = lu(k,1829) - lu(k,1327) * lu(k,1814)
         lu(k,1830) = lu(k,1830) - lu(k,1328) * lu(k,1814)
         lu(k,1831) = lu(k,1831) - lu(k,1329) * lu(k,1814)
         lu(k,1832) = lu(k,1832) - lu(k,1330) * lu(k,1814)
         lu(k,1833) = lu(k,1833) - lu(k,1331) * lu(k,1814)
         lu(k,1897) = - lu(k,1319) * lu(k,1896)
         lu(k,1899) = lu(k,1899) - lu(k,1320) * lu(k,1896)
         lu(k,1900) = lu(k,1900) - lu(k,1321) * lu(k,1896)
         lu(k,1901) = - lu(k,1322) * lu(k,1896)
         lu(k,1903) = lu(k,1903) - lu(k,1323) * lu(k,1896)
         lu(k,1904) = lu(k,1904) - lu(k,1324) * lu(k,1896)
         lu(k,1905) = lu(k,1905) - lu(k,1325) * lu(k,1896)
         lu(k,1908) = lu(k,1908) - lu(k,1326) * lu(k,1896)
         lu(k,1910) = lu(k,1910) - lu(k,1327) * lu(k,1896)
         lu(k,1911) = - lu(k,1328) * lu(k,1896)
         lu(k,1912) = lu(k,1912) - lu(k,1329) * lu(k,1896)
         lu(k,1913) = - lu(k,1330) * lu(k,1896)
         lu(k,1914) = lu(k,1914) - lu(k,1331) * lu(k,1896)
         lu(k,1981) = lu(k,1981) - lu(k,1319) * lu(k,1979)
         lu(k,1983) = lu(k,1983) - lu(k,1320) * lu(k,1979)
         lu(k,1984) = lu(k,1984) - lu(k,1321) * lu(k,1979)
         lu(k,1985) = lu(k,1985) - lu(k,1322) * lu(k,1979)
         lu(k,1987) = lu(k,1987) - lu(k,1323) * lu(k,1979)
         lu(k,1988) = lu(k,1988) - lu(k,1324) * lu(k,1979)
         lu(k,1989) = lu(k,1989) - lu(k,1325) * lu(k,1979)
         lu(k,1992) = lu(k,1992) - lu(k,1326) * lu(k,1979)
         lu(k,1994) = lu(k,1994) - lu(k,1327) * lu(k,1979)
         lu(k,1995) = lu(k,1995) - lu(k,1328) * lu(k,1979)
         lu(k,1996) = lu(k,1996) - lu(k,1329) * lu(k,1979)
         lu(k,1997) = lu(k,1997) - lu(k,1330) * lu(k,1979)
         lu(k,1998) = lu(k,1998) - lu(k,1331) * lu(k,1979)
         lu(k,2006) = lu(k,2006) - lu(k,1319) * lu(k,2004)
         lu(k,2007) = lu(k,2007) - lu(k,1320) * lu(k,2004)
         lu(k,2008) = lu(k,2008) - lu(k,1321) * lu(k,2004)
         lu(k,2009) = lu(k,2009) - lu(k,1322) * lu(k,2004)
         lu(k,2011) = lu(k,2011) - lu(k,1323) * lu(k,2004)
         lu(k,2012) = - lu(k,1324) * lu(k,2004)
         lu(k,2013) = lu(k,2013) - lu(k,1325) * lu(k,2004)
         lu(k,2016) = - lu(k,1326) * lu(k,2004)
         lu(k,2018) = lu(k,2018) - lu(k,1327) * lu(k,2004)
         lu(k,2019) = lu(k,2019) - lu(k,1328) * lu(k,2004)
         lu(k,2020) = lu(k,2020) - lu(k,1329) * lu(k,2004)
         lu(k,2021) = lu(k,2021) - lu(k,1330) * lu(k,2004)
         lu(k,2022) = lu(k,2022) - lu(k,1331) * lu(k,2004)
         lu(k,2127) = lu(k,2127) - lu(k,1319) * lu(k,2125)
         lu(k,2129) = lu(k,2129) - lu(k,1320) * lu(k,2125)
         lu(k,2130) = lu(k,2130) - lu(k,1321) * lu(k,2125)
         lu(k,2131) = lu(k,2131) - lu(k,1322) * lu(k,2125)
         lu(k,2133) = lu(k,2133) - lu(k,1323) * lu(k,2125)
         lu(k,2134) = - lu(k,1324) * lu(k,2125)
         lu(k,2135) = lu(k,2135) - lu(k,1325) * lu(k,2125)
         lu(k,2138) = - lu(k,1326) * lu(k,2125)
         lu(k,2140) = lu(k,2140) - lu(k,1327) * lu(k,2125)
         lu(k,2141) = lu(k,2141) - lu(k,1328) * lu(k,2125)
         lu(k,2142) = lu(k,2142) - lu(k,1329) * lu(k,2125)
         lu(k,2143) = lu(k,2143) - lu(k,1330) * lu(k,2125)
         lu(k,2144) = lu(k,2144) - lu(k,1331) * lu(k,2125)
         lu(k,2153) = - lu(k,1319) * lu(k,2151)
         lu(k,2155) = - lu(k,1320) * lu(k,2151)
         lu(k,2156) = - lu(k,1321) * lu(k,2151)
         lu(k,2157) = lu(k,2157) - lu(k,1322) * lu(k,2151)
         lu(k,2159) = lu(k,2159) - lu(k,1323) * lu(k,2151)
         lu(k,2160) = - lu(k,1324) * lu(k,2151)
         lu(k,2161) = lu(k,2161) - lu(k,1325) * lu(k,2151)
         lu(k,2164) = lu(k,2164) - lu(k,1326) * lu(k,2151)
         lu(k,2166) = - lu(k,1327) * lu(k,2151)
         lu(k,2167) = - lu(k,1328) * lu(k,2151)
         lu(k,2168) = lu(k,2168) - lu(k,1329) * lu(k,2151)
         lu(k,2169) = - lu(k,1330) * lu(k,2151)
         lu(k,2170) = lu(k,2170) - lu(k,1331) * lu(k,2151)
         lu(k,1337) = 1._r8 / lu(k,1337)
         lu(k,1338) = lu(k,1338) * lu(k,1337)
         lu(k,1339) = lu(k,1339) * lu(k,1337)
         lu(k,1340) = lu(k,1340) * lu(k,1337)
         lu(k,1341) = lu(k,1341) * lu(k,1337)
         lu(k,1342) = lu(k,1342) * lu(k,1337)
         lu(k,1343) = lu(k,1343) * lu(k,1337)
         lu(k,1344) = lu(k,1344) * lu(k,1337)
         lu(k,1345) = lu(k,1345) * lu(k,1337)
         lu(k,1346) = lu(k,1346) * lu(k,1337)
         lu(k,1347) = lu(k,1347) * lu(k,1337)
         lu(k,1348) = lu(k,1348) * lu(k,1337)
         lu(k,1349) = lu(k,1349) * lu(k,1337)
         lu(k,1539) = lu(k,1539) - lu(k,1338) * lu(k,1538)
         lu(k,1543) = lu(k,1543) - lu(k,1339) * lu(k,1538)
         lu(k,1544) = lu(k,1544) - lu(k,1340) * lu(k,1538)
         lu(k,1545) = lu(k,1545) - lu(k,1341) * lu(k,1538)
         lu(k,1547) = lu(k,1547) - lu(k,1342) * lu(k,1538)
         lu(k,1549) = lu(k,1549) - lu(k,1343) * lu(k,1538)
         lu(k,1550) = lu(k,1550) - lu(k,1344) * lu(k,1538)
         lu(k,1551) = lu(k,1551) - lu(k,1345) * lu(k,1538)
         lu(k,1552) = lu(k,1552) - lu(k,1346) * lu(k,1538)
         lu(k,1553) = - lu(k,1347) * lu(k,1538)
         lu(k,1555) = lu(k,1555) - lu(k,1348) * lu(k,1538)
         lu(k,1556) = lu(k,1556) - lu(k,1349) * lu(k,1538)
         lu(k,1565) = lu(k,1565) - lu(k,1338) * lu(k,1564)
         lu(k,1569) = lu(k,1569) - lu(k,1339) * lu(k,1564)
         lu(k,1570) = lu(k,1570) - lu(k,1340) * lu(k,1564)
         lu(k,1571) = lu(k,1571) - lu(k,1341) * lu(k,1564)
         lu(k,1573) = lu(k,1573) - lu(k,1342) * lu(k,1564)
         lu(k,1575) = lu(k,1575) - lu(k,1343) * lu(k,1564)
         lu(k,1576) = lu(k,1576) - lu(k,1344) * lu(k,1564)
         lu(k,1577) = lu(k,1577) - lu(k,1345) * lu(k,1564)
         lu(k,1578) = - lu(k,1346) * lu(k,1564)
         lu(k,1579) = lu(k,1579) - lu(k,1347) * lu(k,1564)
         lu(k,1581) = lu(k,1581) - lu(k,1348) * lu(k,1564)
         lu(k,1582) = lu(k,1582) - lu(k,1349) * lu(k,1564)
         lu(k,1713) = lu(k,1713) - lu(k,1338) * lu(k,1712)
         lu(k,1717) = lu(k,1717) - lu(k,1339) * lu(k,1712)
         lu(k,1718) = lu(k,1718) - lu(k,1340) * lu(k,1712)
         lu(k,1719) = lu(k,1719) - lu(k,1341) * lu(k,1712)
         lu(k,1721) = lu(k,1721) - lu(k,1342) * lu(k,1712)
         lu(k,1723) = lu(k,1723) - lu(k,1343) * lu(k,1712)
         lu(k,1724) = lu(k,1724) - lu(k,1344) * lu(k,1712)
         lu(k,1725) = lu(k,1725) - lu(k,1345) * lu(k,1712)
         lu(k,1726) = lu(k,1726) - lu(k,1346) * lu(k,1712)
         lu(k,1727) = lu(k,1727) - lu(k,1347) * lu(k,1712)
         lu(k,1729) = lu(k,1729) - lu(k,1348) * lu(k,1712)
         lu(k,1730) = lu(k,1730) - lu(k,1349) * lu(k,1712)
         lu(k,1816) = lu(k,1816) - lu(k,1338) * lu(k,1815)
         lu(k,1820) = lu(k,1820) - lu(k,1339) * lu(k,1815)
         lu(k,1821) = lu(k,1821) - lu(k,1340) * lu(k,1815)
         lu(k,1822) = lu(k,1822) - lu(k,1341) * lu(k,1815)
         lu(k,1824) = lu(k,1824) - lu(k,1342) * lu(k,1815)
         lu(k,1826) = lu(k,1826) - lu(k,1343) * lu(k,1815)
         lu(k,1827) = lu(k,1827) - lu(k,1344) * lu(k,1815)
         lu(k,1828) = lu(k,1828) - lu(k,1345) * lu(k,1815)
         lu(k,1829) = lu(k,1829) - lu(k,1346) * lu(k,1815)
         lu(k,1830) = lu(k,1830) - lu(k,1347) * lu(k,1815)
         lu(k,1832) = lu(k,1832) - lu(k,1348) * lu(k,1815)
         lu(k,1833) = lu(k,1833) - lu(k,1349) * lu(k,1815)
         lu(k,1840) = lu(k,1840) - lu(k,1338) * lu(k,1839)
         lu(k,1844) = lu(k,1844) - lu(k,1339) * lu(k,1839)
         lu(k,1845) = lu(k,1845) - lu(k,1340) * lu(k,1839)
         lu(k,1846) = lu(k,1846) - lu(k,1341) * lu(k,1839)
         lu(k,1848) = lu(k,1848) - lu(k,1342) * lu(k,1839)
         lu(k,1850) = lu(k,1850) - lu(k,1343) * lu(k,1839)
         lu(k,1851) = lu(k,1851) - lu(k,1344) * lu(k,1839)
         lu(k,1852) = lu(k,1852) - lu(k,1345) * lu(k,1839)
         lu(k,1853) = lu(k,1853) - lu(k,1346) * lu(k,1839)
         lu(k,1854) = lu(k,1854) - lu(k,1347) * lu(k,1839)
         lu(k,1856) = - lu(k,1348) * lu(k,1839)
         lu(k,1857) = lu(k,1857) - lu(k,1349) * lu(k,1839)
         lu(k,1917) = - lu(k,1338) * lu(k,1916)
         lu(k,1921) = lu(k,1921) - lu(k,1339) * lu(k,1916)
         lu(k,1922) = lu(k,1922) - lu(k,1340) * lu(k,1916)
         lu(k,1923) = lu(k,1923) - lu(k,1341) * lu(k,1916)
         lu(k,1925) = lu(k,1925) - lu(k,1342) * lu(k,1916)
         lu(k,1927) = lu(k,1927) - lu(k,1343) * lu(k,1916)
         lu(k,1928) = lu(k,1928) - lu(k,1344) * lu(k,1916)
         lu(k,1929) = lu(k,1929) - lu(k,1345) * lu(k,1916)
         lu(k,1930) = - lu(k,1346) * lu(k,1916)
         lu(k,1931) = - lu(k,1347) * lu(k,1916)
         lu(k,1933) = - lu(k,1348) * lu(k,1916)
         lu(k,1934) = lu(k,1934) - lu(k,1349) * lu(k,1916)
         lu(k,1939) = - lu(k,1338) * lu(k,1938)
         lu(k,1943) = lu(k,1943) - lu(k,1339) * lu(k,1938)
         lu(k,1944) = lu(k,1944) - lu(k,1340) * lu(k,1938)
         lu(k,1945) = lu(k,1945) - lu(k,1341) * lu(k,1938)
         lu(k,1947) = lu(k,1947) - lu(k,1342) * lu(k,1938)
         lu(k,1949) = lu(k,1949) - lu(k,1343) * lu(k,1938)
         lu(k,1950) = lu(k,1950) - lu(k,1344) * lu(k,1938)
         lu(k,1951) = lu(k,1951) - lu(k,1345) * lu(k,1938)
         lu(k,1952) = lu(k,1952) - lu(k,1346) * lu(k,1938)
         lu(k,1953) = - lu(k,1347) * lu(k,1938)
         lu(k,1955) = - lu(k,1348) * lu(k,1938)
         lu(k,1956) = lu(k,1956) - lu(k,1349) * lu(k,1938)
         lu(k,1981) = lu(k,1981) - lu(k,1338) * lu(k,1980)
         lu(k,1985) = lu(k,1985) - lu(k,1339) * lu(k,1980)
         lu(k,1986) = lu(k,1986) - lu(k,1340) * lu(k,1980)
         lu(k,1987) = lu(k,1987) - lu(k,1341) * lu(k,1980)
         lu(k,1989) = lu(k,1989) - lu(k,1342) * lu(k,1980)
         lu(k,1991) = lu(k,1991) - lu(k,1343) * lu(k,1980)
         lu(k,1992) = lu(k,1992) - lu(k,1344) * lu(k,1980)
         lu(k,1993) = lu(k,1993) - lu(k,1345) * lu(k,1980)
         lu(k,1994) = lu(k,1994) - lu(k,1346) * lu(k,1980)
         lu(k,1995) = lu(k,1995) - lu(k,1347) * lu(k,1980)
         lu(k,1997) = lu(k,1997) - lu(k,1348) * lu(k,1980)
         lu(k,1998) = lu(k,1998) - lu(k,1349) * lu(k,1980)
         lu(k,2006) = lu(k,2006) - lu(k,1338) * lu(k,2005)
         lu(k,2009) = lu(k,2009) - lu(k,1339) * lu(k,2005)
         lu(k,2010) = - lu(k,1340) * lu(k,2005)
         lu(k,2011) = lu(k,2011) - lu(k,1341) * lu(k,2005)
         lu(k,2013) = lu(k,2013) - lu(k,1342) * lu(k,2005)
         lu(k,2015) = lu(k,2015) - lu(k,1343) * lu(k,2005)
         lu(k,2016) = lu(k,2016) - lu(k,1344) * lu(k,2005)
         lu(k,2017) = lu(k,2017) - lu(k,1345) * lu(k,2005)
         lu(k,2018) = lu(k,2018) - lu(k,1346) * lu(k,2005)
         lu(k,2019) = lu(k,2019) - lu(k,1347) * lu(k,2005)
         lu(k,2021) = lu(k,2021) - lu(k,1348) * lu(k,2005)
         lu(k,2022) = lu(k,2022) - lu(k,1349) * lu(k,2005)
         lu(k,2100) = lu(k,2100) - lu(k,1338) * lu(k,2099)
         lu(k,2104) = lu(k,2104) - lu(k,1339) * lu(k,2099)
         lu(k,2105) = lu(k,2105) - lu(k,1340) * lu(k,2099)
         lu(k,2106) = lu(k,2106) - lu(k,1341) * lu(k,2099)
         lu(k,2108) = lu(k,2108) - lu(k,1342) * lu(k,2099)
         lu(k,2110) = lu(k,2110) - lu(k,1343) * lu(k,2099)
         lu(k,2111) = lu(k,2111) - lu(k,1344) * lu(k,2099)
         lu(k,2112) = lu(k,2112) - lu(k,1345) * lu(k,2099)
         lu(k,2113) = lu(k,2113) - lu(k,1346) * lu(k,2099)
         lu(k,2114) = lu(k,2114) - lu(k,1347) * lu(k,2099)
         lu(k,2116) = lu(k,2116) - lu(k,1348) * lu(k,2099)
         lu(k,2117) = lu(k,2117) - lu(k,1349) * lu(k,2099)
         lu(k,2127) = lu(k,2127) - lu(k,1338) * lu(k,2126)
         lu(k,2131) = lu(k,2131) - lu(k,1339) * lu(k,2126)
         lu(k,2132) = - lu(k,1340) * lu(k,2126)
         lu(k,2133) = lu(k,2133) - lu(k,1341) * lu(k,2126)
         lu(k,2135) = lu(k,2135) - lu(k,1342) * lu(k,2126)
         lu(k,2137) = lu(k,2137) - lu(k,1343) * lu(k,2126)
         lu(k,2138) = lu(k,2138) - lu(k,1344) * lu(k,2126)
         lu(k,2139) = lu(k,2139) - lu(k,1345) * lu(k,2126)
         lu(k,2140) = lu(k,2140) - lu(k,1346) * lu(k,2126)
         lu(k,2141) = lu(k,2141) - lu(k,1347) * lu(k,2126)
         lu(k,2143) = lu(k,2143) - lu(k,1348) * lu(k,2126)
         lu(k,2144) = lu(k,2144) - lu(k,1349) * lu(k,2126)
         lu(k,2153) = lu(k,2153) - lu(k,1338) * lu(k,2152)
         lu(k,2157) = lu(k,2157) - lu(k,1339) * lu(k,2152)
         lu(k,2158) = lu(k,2158) - lu(k,1340) * lu(k,2152)
         lu(k,2159) = lu(k,2159) - lu(k,1341) * lu(k,2152)
         lu(k,2161) = lu(k,2161) - lu(k,1342) * lu(k,2152)
         lu(k,2163) = lu(k,2163) - lu(k,1343) * lu(k,2152)
         lu(k,2164) = lu(k,2164) - lu(k,1344) * lu(k,2152)
         lu(k,2165) = lu(k,2165) - lu(k,1345) * lu(k,2152)
         lu(k,2166) = lu(k,2166) - lu(k,1346) * lu(k,2152)
         lu(k,2167) = lu(k,2167) - lu(k,1347) * lu(k,2152)
         lu(k,2169) = lu(k,2169) - lu(k,1348) * lu(k,2152)
         lu(k,2170) = lu(k,2170) - lu(k,1349) * lu(k,2152)
      end do
      end subroutine lu_fac26
      subroutine lu_fac27( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1352) = 1._r8 / lu(k,1352)
         lu(k,1353) = lu(k,1353) * lu(k,1352)
         lu(k,1354) = lu(k,1354) * lu(k,1352)
         lu(k,1355) = lu(k,1355) * lu(k,1352)
         lu(k,1356) = lu(k,1356) * lu(k,1352)
         lu(k,1357) = lu(k,1357) * lu(k,1352)
         lu(k,1358) = lu(k,1358) * lu(k,1352)
         lu(k,1359) = lu(k,1359) * lu(k,1352)
         lu(k,1360) = lu(k,1360) * lu(k,1352)
         lu(k,1361) = lu(k,1361) * lu(k,1352)
         lu(k,1362) = lu(k,1362) * lu(k,1352)
         lu(k,1427) = lu(k,1427) - lu(k,1353) * lu(k,1426)
         lu(k,1430) = lu(k,1430) - lu(k,1354) * lu(k,1426)
         lu(k,1431) = lu(k,1431) - lu(k,1355) * lu(k,1426)
         lu(k,1432) = lu(k,1432) - lu(k,1356) * lu(k,1426)
         lu(k,1433) = lu(k,1433) - lu(k,1357) * lu(k,1426)
         lu(k,1434) = lu(k,1434) - lu(k,1358) * lu(k,1426)
         lu(k,1435) = lu(k,1435) - lu(k,1359) * lu(k,1426)
         lu(k,1437) = lu(k,1437) - lu(k,1360) * lu(k,1426)
         lu(k,1438) = lu(k,1438) - lu(k,1361) * lu(k,1426)
         lu(k,1440) = lu(k,1440) - lu(k,1362) * lu(k,1426)
         lu(k,1506) = lu(k,1506) - lu(k,1353) * lu(k,1504)
         lu(k,1509) = lu(k,1509) - lu(k,1354) * lu(k,1504)
         lu(k,1510) = lu(k,1510) - lu(k,1355) * lu(k,1504)
         lu(k,1511) = lu(k,1511) - lu(k,1356) * lu(k,1504)
         lu(k,1512) = lu(k,1512) - lu(k,1357) * lu(k,1504)
         lu(k,1513) = lu(k,1513) - lu(k,1358) * lu(k,1504)
         lu(k,1515) = lu(k,1515) - lu(k,1359) * lu(k,1504)
         lu(k,1518) = lu(k,1518) - lu(k,1360) * lu(k,1504)
         lu(k,1519) = lu(k,1519) - lu(k,1361) * lu(k,1504)
         lu(k,1521) = lu(k,1521) - lu(k,1362) * lu(k,1504)
         lu(k,1541) = lu(k,1541) - lu(k,1353) * lu(k,1539)
         lu(k,1544) = lu(k,1544) - lu(k,1354) * lu(k,1539)
         lu(k,1545) = lu(k,1545) - lu(k,1355) * lu(k,1539)
         lu(k,1546) = lu(k,1546) - lu(k,1356) * lu(k,1539)
         lu(k,1547) = lu(k,1547) - lu(k,1357) * lu(k,1539)
         lu(k,1548) = lu(k,1548) - lu(k,1358) * lu(k,1539)
         lu(k,1550) = lu(k,1550) - lu(k,1359) * lu(k,1539)
         lu(k,1553) = lu(k,1553) - lu(k,1360) * lu(k,1539)
         lu(k,1554) = lu(k,1554) - lu(k,1361) * lu(k,1539)
         lu(k,1556) = lu(k,1556) - lu(k,1362) * lu(k,1539)
         lu(k,1567) = lu(k,1567) - lu(k,1353) * lu(k,1565)
         lu(k,1570) = lu(k,1570) - lu(k,1354) * lu(k,1565)
         lu(k,1571) = lu(k,1571) - lu(k,1355) * lu(k,1565)
         lu(k,1572) = lu(k,1572) - lu(k,1356) * lu(k,1565)
         lu(k,1573) = lu(k,1573) - lu(k,1357) * lu(k,1565)
         lu(k,1574) = lu(k,1574) - lu(k,1358) * lu(k,1565)
         lu(k,1576) = lu(k,1576) - lu(k,1359) * lu(k,1565)
         lu(k,1579) = lu(k,1579) - lu(k,1360) * lu(k,1565)
         lu(k,1580) = lu(k,1580) - lu(k,1361) * lu(k,1565)
         lu(k,1582) = lu(k,1582) - lu(k,1362) * lu(k,1565)
         lu(k,1715) = lu(k,1715) - lu(k,1353) * lu(k,1713)
         lu(k,1718) = lu(k,1718) - lu(k,1354) * lu(k,1713)
         lu(k,1719) = lu(k,1719) - lu(k,1355) * lu(k,1713)
         lu(k,1720) = lu(k,1720) - lu(k,1356) * lu(k,1713)
         lu(k,1721) = lu(k,1721) - lu(k,1357) * lu(k,1713)
         lu(k,1722) = lu(k,1722) - lu(k,1358) * lu(k,1713)
         lu(k,1724) = lu(k,1724) - lu(k,1359) * lu(k,1713)
         lu(k,1727) = lu(k,1727) - lu(k,1360) * lu(k,1713)
         lu(k,1728) = lu(k,1728) - lu(k,1361) * lu(k,1713)
         lu(k,1730) = lu(k,1730) - lu(k,1362) * lu(k,1713)
         lu(k,1777) = lu(k,1777) - lu(k,1353) * lu(k,1775)
         lu(k,1780) = lu(k,1780) - lu(k,1354) * lu(k,1775)
         lu(k,1781) = lu(k,1781) - lu(k,1355) * lu(k,1775)
         lu(k,1782) = lu(k,1782) - lu(k,1356) * lu(k,1775)
         lu(k,1783) = lu(k,1783) - lu(k,1357) * lu(k,1775)
         lu(k,1784) = lu(k,1784) - lu(k,1358) * lu(k,1775)
         lu(k,1786) = lu(k,1786) - lu(k,1359) * lu(k,1775)
         lu(k,1789) = lu(k,1789) - lu(k,1360) * lu(k,1775)
         lu(k,1790) = lu(k,1790) - lu(k,1361) * lu(k,1775)
         lu(k,1792) = lu(k,1792) - lu(k,1362) * lu(k,1775)
         lu(k,1818) = lu(k,1818) - lu(k,1353) * lu(k,1816)
         lu(k,1821) = lu(k,1821) - lu(k,1354) * lu(k,1816)
         lu(k,1822) = lu(k,1822) - lu(k,1355) * lu(k,1816)
         lu(k,1823) = lu(k,1823) - lu(k,1356) * lu(k,1816)
         lu(k,1824) = lu(k,1824) - lu(k,1357) * lu(k,1816)
         lu(k,1825) = lu(k,1825) - lu(k,1358) * lu(k,1816)
         lu(k,1827) = lu(k,1827) - lu(k,1359) * lu(k,1816)
         lu(k,1830) = lu(k,1830) - lu(k,1360) * lu(k,1816)
         lu(k,1831) = lu(k,1831) - lu(k,1361) * lu(k,1816)
         lu(k,1833) = lu(k,1833) - lu(k,1362) * lu(k,1816)
         lu(k,1842) = - lu(k,1353) * lu(k,1840)
         lu(k,1845) = lu(k,1845) - lu(k,1354) * lu(k,1840)
         lu(k,1846) = lu(k,1846) - lu(k,1355) * lu(k,1840)
         lu(k,1847) = - lu(k,1356) * lu(k,1840)
         lu(k,1848) = lu(k,1848) - lu(k,1357) * lu(k,1840)
         lu(k,1849) = lu(k,1849) - lu(k,1358) * lu(k,1840)
         lu(k,1851) = lu(k,1851) - lu(k,1359) * lu(k,1840)
         lu(k,1854) = lu(k,1854) - lu(k,1360) * lu(k,1840)
         lu(k,1855) = lu(k,1855) - lu(k,1361) * lu(k,1840)
         lu(k,1857) = lu(k,1857) - lu(k,1362) * lu(k,1840)
         lu(k,1899) = lu(k,1899) - lu(k,1353) * lu(k,1897)
         lu(k,1902) = - lu(k,1354) * lu(k,1897)
         lu(k,1903) = lu(k,1903) - lu(k,1355) * lu(k,1897)
         lu(k,1904) = lu(k,1904) - lu(k,1356) * lu(k,1897)
         lu(k,1905) = lu(k,1905) - lu(k,1357) * lu(k,1897)
         lu(k,1906) = lu(k,1906) - lu(k,1358) * lu(k,1897)
         lu(k,1908) = lu(k,1908) - lu(k,1359) * lu(k,1897)
         lu(k,1911) = lu(k,1911) - lu(k,1360) * lu(k,1897)
         lu(k,1912) = lu(k,1912) - lu(k,1361) * lu(k,1897)
         lu(k,1914) = lu(k,1914) - lu(k,1362) * lu(k,1897)
         lu(k,1919) = lu(k,1919) - lu(k,1353) * lu(k,1917)
         lu(k,1922) = lu(k,1922) - lu(k,1354) * lu(k,1917)
         lu(k,1923) = lu(k,1923) - lu(k,1355) * lu(k,1917)
         lu(k,1924) = lu(k,1924) - lu(k,1356) * lu(k,1917)
         lu(k,1925) = lu(k,1925) - lu(k,1357) * lu(k,1917)
         lu(k,1926) = - lu(k,1358) * lu(k,1917)
         lu(k,1928) = lu(k,1928) - lu(k,1359) * lu(k,1917)
         lu(k,1931) = lu(k,1931) - lu(k,1360) * lu(k,1917)
         lu(k,1932) = lu(k,1932) - lu(k,1361) * lu(k,1917)
         lu(k,1934) = lu(k,1934) - lu(k,1362) * lu(k,1917)
         lu(k,1941) = - lu(k,1353) * lu(k,1939)
         lu(k,1944) = lu(k,1944) - lu(k,1354) * lu(k,1939)
         lu(k,1945) = lu(k,1945) - lu(k,1355) * lu(k,1939)
         lu(k,1946) = - lu(k,1356) * lu(k,1939)
         lu(k,1947) = lu(k,1947) - lu(k,1357) * lu(k,1939)
         lu(k,1948) = - lu(k,1358) * lu(k,1939)
         lu(k,1950) = lu(k,1950) - lu(k,1359) * lu(k,1939)
         lu(k,1953) = lu(k,1953) - lu(k,1360) * lu(k,1939)
         lu(k,1954) = - lu(k,1361) * lu(k,1939)
         lu(k,1956) = lu(k,1956) - lu(k,1362) * lu(k,1939)
         lu(k,1983) = lu(k,1983) - lu(k,1353) * lu(k,1981)
         lu(k,1986) = lu(k,1986) - lu(k,1354) * lu(k,1981)
         lu(k,1987) = lu(k,1987) - lu(k,1355) * lu(k,1981)
         lu(k,1988) = lu(k,1988) - lu(k,1356) * lu(k,1981)
         lu(k,1989) = lu(k,1989) - lu(k,1357) * lu(k,1981)
         lu(k,1990) = lu(k,1990) - lu(k,1358) * lu(k,1981)
         lu(k,1992) = lu(k,1992) - lu(k,1359) * lu(k,1981)
         lu(k,1995) = lu(k,1995) - lu(k,1360) * lu(k,1981)
         lu(k,1996) = lu(k,1996) - lu(k,1361) * lu(k,1981)
         lu(k,1998) = lu(k,1998) - lu(k,1362) * lu(k,1981)
         lu(k,2007) = lu(k,2007) - lu(k,1353) * lu(k,2006)
         lu(k,2010) = lu(k,2010) - lu(k,1354) * lu(k,2006)
         lu(k,2011) = lu(k,2011) - lu(k,1355) * lu(k,2006)
         lu(k,2012) = lu(k,2012) - lu(k,1356) * lu(k,2006)
         lu(k,2013) = lu(k,2013) - lu(k,1357) * lu(k,2006)
         lu(k,2014) = - lu(k,1358) * lu(k,2006)
         lu(k,2016) = lu(k,2016) - lu(k,1359) * lu(k,2006)
         lu(k,2019) = lu(k,2019) - lu(k,1360) * lu(k,2006)
         lu(k,2020) = lu(k,2020) - lu(k,1361) * lu(k,2006)
         lu(k,2022) = lu(k,2022) - lu(k,1362) * lu(k,2006)
         lu(k,2102) = lu(k,2102) - lu(k,1353) * lu(k,2100)
         lu(k,2105) = lu(k,2105) - lu(k,1354) * lu(k,2100)
         lu(k,2106) = lu(k,2106) - lu(k,1355) * lu(k,2100)
         lu(k,2107) = lu(k,2107) - lu(k,1356) * lu(k,2100)
         lu(k,2108) = lu(k,2108) - lu(k,1357) * lu(k,2100)
         lu(k,2109) = lu(k,2109) - lu(k,1358) * lu(k,2100)
         lu(k,2111) = lu(k,2111) - lu(k,1359) * lu(k,2100)
         lu(k,2114) = lu(k,2114) - lu(k,1360) * lu(k,2100)
         lu(k,2115) = lu(k,2115) - lu(k,1361) * lu(k,2100)
         lu(k,2117) = lu(k,2117) - lu(k,1362) * lu(k,2100)
         lu(k,2129) = lu(k,2129) - lu(k,1353) * lu(k,2127)
         lu(k,2132) = lu(k,2132) - lu(k,1354) * lu(k,2127)
         lu(k,2133) = lu(k,2133) - lu(k,1355) * lu(k,2127)
         lu(k,2134) = lu(k,2134) - lu(k,1356) * lu(k,2127)
         lu(k,2135) = lu(k,2135) - lu(k,1357) * lu(k,2127)
         lu(k,2136) = lu(k,2136) - lu(k,1358) * lu(k,2127)
         lu(k,2138) = lu(k,2138) - lu(k,1359) * lu(k,2127)
         lu(k,2141) = lu(k,2141) - lu(k,1360) * lu(k,2127)
         lu(k,2142) = lu(k,2142) - lu(k,1361) * lu(k,2127)
         lu(k,2144) = lu(k,2144) - lu(k,1362) * lu(k,2127)
         lu(k,2155) = lu(k,2155) - lu(k,1353) * lu(k,2153)
         lu(k,2158) = lu(k,2158) - lu(k,1354) * lu(k,2153)
         lu(k,2159) = lu(k,2159) - lu(k,1355) * lu(k,2153)
         lu(k,2160) = lu(k,2160) - lu(k,1356) * lu(k,2153)
         lu(k,2161) = lu(k,2161) - lu(k,1357) * lu(k,2153)
         lu(k,2162) = - lu(k,1358) * lu(k,2153)
         lu(k,2164) = lu(k,2164) - lu(k,1359) * lu(k,2153)
         lu(k,2167) = lu(k,2167) - lu(k,1360) * lu(k,2153)
         lu(k,2168) = lu(k,2168) - lu(k,1361) * lu(k,2153)
         lu(k,2170) = lu(k,2170) - lu(k,1362) * lu(k,2153)
         lu(k,1396) = 1._r8 / lu(k,1396)
         lu(k,1397) = lu(k,1397) * lu(k,1396)
         lu(k,1398) = lu(k,1398) * lu(k,1396)
         lu(k,1399) = lu(k,1399) * lu(k,1396)
         lu(k,1400) = lu(k,1400) * lu(k,1396)
         lu(k,1401) = lu(k,1401) * lu(k,1396)
         lu(k,1402) = lu(k,1402) * lu(k,1396)
         lu(k,1403) = lu(k,1403) * lu(k,1396)
         lu(k,1404) = lu(k,1404) * lu(k,1396)
         lu(k,1405) = lu(k,1405) * lu(k,1396)
         lu(k,1406) = lu(k,1406) * lu(k,1396)
         lu(k,1407) = lu(k,1407) * lu(k,1396)
         lu(k,1408) = lu(k,1408) * lu(k,1396)
         lu(k,1409) = lu(k,1409) * lu(k,1396)
         lu(k,1506) = lu(k,1506) - lu(k,1397) * lu(k,1505)
         lu(k,1507) = lu(k,1507) - lu(k,1398) * lu(k,1505)
         lu(k,1508) = lu(k,1508) - lu(k,1399) * lu(k,1505)
         lu(k,1510) = lu(k,1510) - lu(k,1400) * lu(k,1505)
         lu(k,1511) = lu(k,1511) - lu(k,1401) * lu(k,1505)
         lu(k,1513) = lu(k,1513) - lu(k,1402) * lu(k,1505)
         lu(k,1514) = lu(k,1514) - lu(k,1403) * lu(k,1505)
         lu(k,1515) = lu(k,1515) - lu(k,1404) * lu(k,1505)
         lu(k,1516) = lu(k,1516) - lu(k,1405) * lu(k,1505)
         lu(k,1517) = lu(k,1517) - lu(k,1406) * lu(k,1505)
         lu(k,1519) = lu(k,1519) - lu(k,1407) * lu(k,1505)
         lu(k,1520) = lu(k,1520) - lu(k,1408) * lu(k,1505)
         lu(k,1521) = lu(k,1521) - lu(k,1409) * lu(k,1505)
         lu(k,1541) = lu(k,1541) - lu(k,1397) * lu(k,1540)
         lu(k,1542) = lu(k,1542) - lu(k,1398) * lu(k,1540)
         lu(k,1543) = lu(k,1543) - lu(k,1399) * lu(k,1540)
         lu(k,1545) = lu(k,1545) - lu(k,1400) * lu(k,1540)
         lu(k,1546) = lu(k,1546) - lu(k,1401) * lu(k,1540)
         lu(k,1548) = lu(k,1548) - lu(k,1402) * lu(k,1540)
         lu(k,1549) = lu(k,1549) - lu(k,1403) * lu(k,1540)
         lu(k,1550) = lu(k,1550) - lu(k,1404) * lu(k,1540)
         lu(k,1551) = lu(k,1551) - lu(k,1405) * lu(k,1540)
         lu(k,1552) = lu(k,1552) - lu(k,1406) * lu(k,1540)
         lu(k,1554) = lu(k,1554) - lu(k,1407) * lu(k,1540)
         lu(k,1555) = lu(k,1555) - lu(k,1408) * lu(k,1540)
         lu(k,1556) = lu(k,1556) - lu(k,1409) * lu(k,1540)
         lu(k,1567) = lu(k,1567) - lu(k,1397) * lu(k,1566)
         lu(k,1568) = lu(k,1568) - lu(k,1398) * lu(k,1566)
         lu(k,1569) = lu(k,1569) - lu(k,1399) * lu(k,1566)
         lu(k,1571) = lu(k,1571) - lu(k,1400) * lu(k,1566)
         lu(k,1572) = lu(k,1572) - lu(k,1401) * lu(k,1566)
         lu(k,1574) = lu(k,1574) - lu(k,1402) * lu(k,1566)
         lu(k,1575) = lu(k,1575) - lu(k,1403) * lu(k,1566)
         lu(k,1576) = lu(k,1576) - lu(k,1404) * lu(k,1566)
         lu(k,1577) = lu(k,1577) - lu(k,1405) * lu(k,1566)
         lu(k,1578) = lu(k,1578) - lu(k,1406) * lu(k,1566)
         lu(k,1580) = lu(k,1580) - lu(k,1407) * lu(k,1566)
         lu(k,1581) = lu(k,1581) - lu(k,1408) * lu(k,1566)
         lu(k,1582) = lu(k,1582) - lu(k,1409) * lu(k,1566)
         lu(k,1715) = lu(k,1715) - lu(k,1397) * lu(k,1714)
         lu(k,1716) = lu(k,1716) - lu(k,1398) * lu(k,1714)
         lu(k,1717) = lu(k,1717) - lu(k,1399) * lu(k,1714)
         lu(k,1719) = lu(k,1719) - lu(k,1400) * lu(k,1714)
         lu(k,1720) = lu(k,1720) - lu(k,1401) * lu(k,1714)
         lu(k,1722) = lu(k,1722) - lu(k,1402) * lu(k,1714)
         lu(k,1723) = lu(k,1723) - lu(k,1403) * lu(k,1714)
         lu(k,1724) = lu(k,1724) - lu(k,1404) * lu(k,1714)
         lu(k,1725) = lu(k,1725) - lu(k,1405) * lu(k,1714)
         lu(k,1726) = lu(k,1726) - lu(k,1406) * lu(k,1714)
         lu(k,1728) = lu(k,1728) - lu(k,1407) * lu(k,1714)
         lu(k,1729) = lu(k,1729) - lu(k,1408) * lu(k,1714)
         lu(k,1730) = lu(k,1730) - lu(k,1409) * lu(k,1714)
         lu(k,1777) = lu(k,1777) - lu(k,1397) * lu(k,1776)
         lu(k,1778) = lu(k,1778) - lu(k,1398) * lu(k,1776)
         lu(k,1779) = lu(k,1779) - lu(k,1399) * lu(k,1776)
         lu(k,1781) = lu(k,1781) - lu(k,1400) * lu(k,1776)
         lu(k,1782) = lu(k,1782) - lu(k,1401) * lu(k,1776)
         lu(k,1784) = lu(k,1784) - lu(k,1402) * lu(k,1776)
         lu(k,1785) = lu(k,1785) - lu(k,1403) * lu(k,1776)
         lu(k,1786) = lu(k,1786) - lu(k,1404) * lu(k,1776)
         lu(k,1787) = lu(k,1787) - lu(k,1405) * lu(k,1776)
         lu(k,1788) = lu(k,1788) - lu(k,1406) * lu(k,1776)
         lu(k,1790) = lu(k,1790) - lu(k,1407) * lu(k,1776)
         lu(k,1791) = lu(k,1791) - lu(k,1408) * lu(k,1776)
         lu(k,1792) = lu(k,1792) - lu(k,1409) * lu(k,1776)
         lu(k,1818) = lu(k,1818) - lu(k,1397) * lu(k,1817)
         lu(k,1819) = lu(k,1819) - lu(k,1398) * lu(k,1817)
         lu(k,1820) = lu(k,1820) - lu(k,1399) * lu(k,1817)
         lu(k,1822) = lu(k,1822) - lu(k,1400) * lu(k,1817)
         lu(k,1823) = lu(k,1823) - lu(k,1401) * lu(k,1817)
         lu(k,1825) = lu(k,1825) - lu(k,1402) * lu(k,1817)
         lu(k,1826) = lu(k,1826) - lu(k,1403) * lu(k,1817)
         lu(k,1827) = lu(k,1827) - lu(k,1404) * lu(k,1817)
         lu(k,1828) = lu(k,1828) - lu(k,1405) * lu(k,1817)
         lu(k,1829) = lu(k,1829) - lu(k,1406) * lu(k,1817)
         lu(k,1831) = lu(k,1831) - lu(k,1407) * lu(k,1817)
         lu(k,1832) = lu(k,1832) - lu(k,1408) * lu(k,1817)
         lu(k,1833) = lu(k,1833) - lu(k,1409) * lu(k,1817)
         lu(k,1842) = lu(k,1842) - lu(k,1397) * lu(k,1841)
         lu(k,1843) = lu(k,1843) - lu(k,1398) * lu(k,1841)
         lu(k,1844) = lu(k,1844) - lu(k,1399) * lu(k,1841)
         lu(k,1846) = lu(k,1846) - lu(k,1400) * lu(k,1841)
         lu(k,1847) = lu(k,1847) - lu(k,1401) * lu(k,1841)
         lu(k,1849) = lu(k,1849) - lu(k,1402) * lu(k,1841)
         lu(k,1850) = lu(k,1850) - lu(k,1403) * lu(k,1841)
         lu(k,1851) = lu(k,1851) - lu(k,1404) * lu(k,1841)
         lu(k,1852) = lu(k,1852) - lu(k,1405) * lu(k,1841)
         lu(k,1853) = lu(k,1853) - lu(k,1406) * lu(k,1841)
         lu(k,1855) = lu(k,1855) - lu(k,1407) * lu(k,1841)
         lu(k,1856) = lu(k,1856) - lu(k,1408) * lu(k,1841)
         lu(k,1857) = lu(k,1857) - lu(k,1409) * lu(k,1841)
         lu(k,1899) = lu(k,1899) - lu(k,1397) * lu(k,1898)
         lu(k,1900) = lu(k,1900) - lu(k,1398) * lu(k,1898)
         lu(k,1901) = lu(k,1901) - lu(k,1399) * lu(k,1898)
         lu(k,1903) = lu(k,1903) - lu(k,1400) * lu(k,1898)
         lu(k,1904) = lu(k,1904) - lu(k,1401) * lu(k,1898)
         lu(k,1906) = lu(k,1906) - lu(k,1402) * lu(k,1898)
         lu(k,1907) = lu(k,1907) - lu(k,1403) * lu(k,1898)
         lu(k,1908) = lu(k,1908) - lu(k,1404) * lu(k,1898)
         lu(k,1909) = lu(k,1909) - lu(k,1405) * lu(k,1898)
         lu(k,1910) = lu(k,1910) - lu(k,1406) * lu(k,1898)
         lu(k,1912) = lu(k,1912) - lu(k,1407) * lu(k,1898)
         lu(k,1913) = lu(k,1913) - lu(k,1408) * lu(k,1898)
         lu(k,1914) = lu(k,1914) - lu(k,1409) * lu(k,1898)
         lu(k,1919) = lu(k,1919) - lu(k,1397) * lu(k,1918)
         lu(k,1920) = - lu(k,1398) * lu(k,1918)
         lu(k,1921) = lu(k,1921) - lu(k,1399) * lu(k,1918)
         lu(k,1923) = lu(k,1923) - lu(k,1400) * lu(k,1918)
         lu(k,1924) = lu(k,1924) - lu(k,1401) * lu(k,1918)
         lu(k,1926) = lu(k,1926) - lu(k,1402) * lu(k,1918)
         lu(k,1927) = lu(k,1927) - lu(k,1403) * lu(k,1918)
         lu(k,1928) = lu(k,1928) - lu(k,1404) * lu(k,1918)
         lu(k,1929) = lu(k,1929) - lu(k,1405) * lu(k,1918)
         lu(k,1930) = lu(k,1930) - lu(k,1406) * lu(k,1918)
         lu(k,1932) = lu(k,1932) - lu(k,1407) * lu(k,1918)
         lu(k,1933) = lu(k,1933) - lu(k,1408) * lu(k,1918)
         lu(k,1934) = lu(k,1934) - lu(k,1409) * lu(k,1918)
         lu(k,1941) = lu(k,1941) - lu(k,1397) * lu(k,1940)
         lu(k,1942) = - lu(k,1398) * lu(k,1940)
         lu(k,1943) = lu(k,1943) - lu(k,1399) * lu(k,1940)
         lu(k,1945) = lu(k,1945) - lu(k,1400) * lu(k,1940)
         lu(k,1946) = lu(k,1946) - lu(k,1401) * lu(k,1940)
         lu(k,1948) = lu(k,1948) - lu(k,1402) * lu(k,1940)
         lu(k,1949) = lu(k,1949) - lu(k,1403) * lu(k,1940)
         lu(k,1950) = lu(k,1950) - lu(k,1404) * lu(k,1940)
         lu(k,1951) = lu(k,1951) - lu(k,1405) * lu(k,1940)
         lu(k,1952) = lu(k,1952) - lu(k,1406) * lu(k,1940)
         lu(k,1954) = lu(k,1954) - lu(k,1407) * lu(k,1940)
         lu(k,1955) = lu(k,1955) - lu(k,1408) * lu(k,1940)
         lu(k,1956) = lu(k,1956) - lu(k,1409) * lu(k,1940)
         lu(k,1983) = lu(k,1983) - lu(k,1397) * lu(k,1982)
         lu(k,1984) = lu(k,1984) - lu(k,1398) * lu(k,1982)
         lu(k,1985) = lu(k,1985) - lu(k,1399) * lu(k,1982)
         lu(k,1987) = lu(k,1987) - lu(k,1400) * lu(k,1982)
         lu(k,1988) = lu(k,1988) - lu(k,1401) * lu(k,1982)
         lu(k,1990) = lu(k,1990) - lu(k,1402) * lu(k,1982)
         lu(k,1991) = lu(k,1991) - lu(k,1403) * lu(k,1982)
         lu(k,1992) = lu(k,1992) - lu(k,1404) * lu(k,1982)
         lu(k,1993) = lu(k,1993) - lu(k,1405) * lu(k,1982)
         lu(k,1994) = lu(k,1994) - lu(k,1406) * lu(k,1982)
         lu(k,1996) = lu(k,1996) - lu(k,1407) * lu(k,1982)
         lu(k,1997) = lu(k,1997) - lu(k,1408) * lu(k,1982)
         lu(k,1998) = lu(k,1998) - lu(k,1409) * lu(k,1982)
         lu(k,2102) = lu(k,2102) - lu(k,1397) * lu(k,2101)
         lu(k,2103) = lu(k,2103) - lu(k,1398) * lu(k,2101)
         lu(k,2104) = lu(k,2104) - lu(k,1399) * lu(k,2101)
         lu(k,2106) = lu(k,2106) - lu(k,1400) * lu(k,2101)
         lu(k,2107) = lu(k,2107) - lu(k,1401) * lu(k,2101)
         lu(k,2109) = lu(k,2109) - lu(k,1402) * lu(k,2101)
         lu(k,2110) = lu(k,2110) - lu(k,1403) * lu(k,2101)
         lu(k,2111) = lu(k,2111) - lu(k,1404) * lu(k,2101)
         lu(k,2112) = lu(k,2112) - lu(k,1405) * lu(k,2101)
         lu(k,2113) = lu(k,2113) - lu(k,1406) * lu(k,2101)
         lu(k,2115) = lu(k,2115) - lu(k,1407) * lu(k,2101)
         lu(k,2116) = lu(k,2116) - lu(k,1408) * lu(k,2101)
         lu(k,2117) = lu(k,2117) - lu(k,1409) * lu(k,2101)
         lu(k,2129) = lu(k,2129) - lu(k,1397) * lu(k,2128)
         lu(k,2130) = lu(k,2130) - lu(k,1398) * lu(k,2128)
         lu(k,2131) = lu(k,2131) - lu(k,1399) * lu(k,2128)
         lu(k,2133) = lu(k,2133) - lu(k,1400) * lu(k,2128)
         lu(k,2134) = lu(k,2134) - lu(k,1401) * lu(k,2128)
         lu(k,2136) = lu(k,2136) - lu(k,1402) * lu(k,2128)
         lu(k,2137) = lu(k,2137) - lu(k,1403) * lu(k,2128)
         lu(k,2138) = lu(k,2138) - lu(k,1404) * lu(k,2128)
         lu(k,2139) = lu(k,2139) - lu(k,1405) * lu(k,2128)
         lu(k,2140) = lu(k,2140) - lu(k,1406) * lu(k,2128)
         lu(k,2142) = lu(k,2142) - lu(k,1407) * lu(k,2128)
         lu(k,2143) = lu(k,2143) - lu(k,1408) * lu(k,2128)
         lu(k,2144) = lu(k,2144) - lu(k,1409) * lu(k,2128)
         lu(k,2155) = lu(k,2155) - lu(k,1397) * lu(k,2154)
         lu(k,2156) = lu(k,2156) - lu(k,1398) * lu(k,2154)
         lu(k,2157) = lu(k,2157) - lu(k,1399) * lu(k,2154)
         lu(k,2159) = lu(k,2159) - lu(k,1400) * lu(k,2154)
         lu(k,2160) = lu(k,2160) - lu(k,1401) * lu(k,2154)
         lu(k,2162) = lu(k,2162) - lu(k,1402) * lu(k,2154)
         lu(k,2163) = lu(k,2163) - lu(k,1403) * lu(k,2154)
         lu(k,2164) = lu(k,2164) - lu(k,1404) * lu(k,2154)
         lu(k,2165) = lu(k,2165) - lu(k,1405) * lu(k,2154)
         lu(k,2166) = lu(k,2166) - lu(k,1406) * lu(k,2154)
         lu(k,2168) = lu(k,2168) - lu(k,1407) * lu(k,2154)
         lu(k,2169) = lu(k,2169) - lu(k,1408) * lu(k,2154)
         lu(k,2170) = lu(k,2170) - lu(k,1409) * lu(k,2154)
         lu(k,1427) = 1._r8 / lu(k,1427)
         lu(k,1428) = lu(k,1428) * lu(k,1427)
         lu(k,1429) = lu(k,1429) * lu(k,1427)
         lu(k,1430) = lu(k,1430) * lu(k,1427)
         lu(k,1431) = lu(k,1431) * lu(k,1427)
         lu(k,1432) = lu(k,1432) * lu(k,1427)
         lu(k,1433) = lu(k,1433) * lu(k,1427)
         lu(k,1434) = lu(k,1434) * lu(k,1427)
         lu(k,1435) = lu(k,1435) * lu(k,1427)
         lu(k,1436) = lu(k,1436) * lu(k,1427)
         lu(k,1437) = lu(k,1437) * lu(k,1427)
         lu(k,1438) = lu(k,1438) * lu(k,1427)
         lu(k,1439) = lu(k,1439) * lu(k,1427)
         lu(k,1440) = lu(k,1440) * lu(k,1427)
         lu(k,1507) = lu(k,1507) - lu(k,1428) * lu(k,1506)
         lu(k,1508) = lu(k,1508) - lu(k,1429) * lu(k,1506)
         lu(k,1509) = lu(k,1509) - lu(k,1430) * lu(k,1506)
         lu(k,1510) = lu(k,1510) - lu(k,1431) * lu(k,1506)
         lu(k,1511) = lu(k,1511) - lu(k,1432) * lu(k,1506)
         lu(k,1512) = lu(k,1512) - lu(k,1433) * lu(k,1506)
         lu(k,1513) = lu(k,1513) - lu(k,1434) * lu(k,1506)
         lu(k,1515) = lu(k,1515) - lu(k,1435) * lu(k,1506)
         lu(k,1517) = lu(k,1517) - lu(k,1436) * lu(k,1506)
         lu(k,1518) = lu(k,1518) - lu(k,1437) * lu(k,1506)
         lu(k,1519) = lu(k,1519) - lu(k,1438) * lu(k,1506)
         lu(k,1520) = lu(k,1520) - lu(k,1439) * lu(k,1506)
         lu(k,1521) = lu(k,1521) - lu(k,1440) * lu(k,1506)
         lu(k,1542) = lu(k,1542) - lu(k,1428) * lu(k,1541)
         lu(k,1543) = lu(k,1543) - lu(k,1429) * lu(k,1541)
         lu(k,1544) = lu(k,1544) - lu(k,1430) * lu(k,1541)
         lu(k,1545) = lu(k,1545) - lu(k,1431) * lu(k,1541)
         lu(k,1546) = lu(k,1546) - lu(k,1432) * lu(k,1541)
         lu(k,1547) = lu(k,1547) - lu(k,1433) * lu(k,1541)
         lu(k,1548) = lu(k,1548) - lu(k,1434) * lu(k,1541)
         lu(k,1550) = lu(k,1550) - lu(k,1435) * lu(k,1541)
         lu(k,1552) = lu(k,1552) - lu(k,1436) * lu(k,1541)
         lu(k,1553) = lu(k,1553) - lu(k,1437) * lu(k,1541)
         lu(k,1554) = lu(k,1554) - lu(k,1438) * lu(k,1541)
         lu(k,1555) = lu(k,1555) - lu(k,1439) * lu(k,1541)
         lu(k,1556) = lu(k,1556) - lu(k,1440) * lu(k,1541)
         lu(k,1568) = lu(k,1568) - lu(k,1428) * lu(k,1567)
         lu(k,1569) = lu(k,1569) - lu(k,1429) * lu(k,1567)
         lu(k,1570) = lu(k,1570) - lu(k,1430) * lu(k,1567)
         lu(k,1571) = lu(k,1571) - lu(k,1431) * lu(k,1567)
         lu(k,1572) = lu(k,1572) - lu(k,1432) * lu(k,1567)
         lu(k,1573) = lu(k,1573) - lu(k,1433) * lu(k,1567)
         lu(k,1574) = lu(k,1574) - lu(k,1434) * lu(k,1567)
         lu(k,1576) = lu(k,1576) - lu(k,1435) * lu(k,1567)
         lu(k,1578) = lu(k,1578) - lu(k,1436) * lu(k,1567)
         lu(k,1579) = lu(k,1579) - lu(k,1437) * lu(k,1567)
         lu(k,1580) = lu(k,1580) - lu(k,1438) * lu(k,1567)
         lu(k,1581) = lu(k,1581) - lu(k,1439) * lu(k,1567)
         lu(k,1582) = lu(k,1582) - lu(k,1440) * lu(k,1567)
         lu(k,1716) = lu(k,1716) - lu(k,1428) * lu(k,1715)
         lu(k,1717) = lu(k,1717) - lu(k,1429) * lu(k,1715)
         lu(k,1718) = lu(k,1718) - lu(k,1430) * lu(k,1715)
         lu(k,1719) = lu(k,1719) - lu(k,1431) * lu(k,1715)
         lu(k,1720) = lu(k,1720) - lu(k,1432) * lu(k,1715)
         lu(k,1721) = lu(k,1721) - lu(k,1433) * lu(k,1715)
         lu(k,1722) = lu(k,1722) - lu(k,1434) * lu(k,1715)
         lu(k,1724) = lu(k,1724) - lu(k,1435) * lu(k,1715)
         lu(k,1726) = lu(k,1726) - lu(k,1436) * lu(k,1715)
         lu(k,1727) = lu(k,1727) - lu(k,1437) * lu(k,1715)
         lu(k,1728) = lu(k,1728) - lu(k,1438) * lu(k,1715)
         lu(k,1729) = lu(k,1729) - lu(k,1439) * lu(k,1715)
         lu(k,1730) = lu(k,1730) - lu(k,1440) * lu(k,1715)
         lu(k,1778) = lu(k,1778) - lu(k,1428) * lu(k,1777)
         lu(k,1779) = lu(k,1779) - lu(k,1429) * lu(k,1777)
         lu(k,1780) = lu(k,1780) - lu(k,1430) * lu(k,1777)
         lu(k,1781) = lu(k,1781) - lu(k,1431) * lu(k,1777)
         lu(k,1782) = lu(k,1782) - lu(k,1432) * lu(k,1777)
         lu(k,1783) = lu(k,1783) - lu(k,1433) * lu(k,1777)
         lu(k,1784) = lu(k,1784) - lu(k,1434) * lu(k,1777)
         lu(k,1786) = lu(k,1786) - lu(k,1435) * lu(k,1777)
         lu(k,1788) = lu(k,1788) - lu(k,1436) * lu(k,1777)
         lu(k,1789) = lu(k,1789) - lu(k,1437) * lu(k,1777)
         lu(k,1790) = lu(k,1790) - lu(k,1438) * lu(k,1777)
         lu(k,1791) = lu(k,1791) - lu(k,1439) * lu(k,1777)
         lu(k,1792) = lu(k,1792) - lu(k,1440) * lu(k,1777)
         lu(k,1819) = lu(k,1819) - lu(k,1428) * lu(k,1818)
         lu(k,1820) = lu(k,1820) - lu(k,1429) * lu(k,1818)
         lu(k,1821) = lu(k,1821) - lu(k,1430) * lu(k,1818)
         lu(k,1822) = lu(k,1822) - lu(k,1431) * lu(k,1818)
         lu(k,1823) = lu(k,1823) - lu(k,1432) * lu(k,1818)
         lu(k,1824) = lu(k,1824) - lu(k,1433) * lu(k,1818)
         lu(k,1825) = lu(k,1825) - lu(k,1434) * lu(k,1818)
         lu(k,1827) = lu(k,1827) - lu(k,1435) * lu(k,1818)
         lu(k,1829) = lu(k,1829) - lu(k,1436) * lu(k,1818)
         lu(k,1830) = lu(k,1830) - lu(k,1437) * lu(k,1818)
         lu(k,1831) = lu(k,1831) - lu(k,1438) * lu(k,1818)
         lu(k,1832) = lu(k,1832) - lu(k,1439) * lu(k,1818)
         lu(k,1833) = lu(k,1833) - lu(k,1440) * lu(k,1818)
         lu(k,1843) = lu(k,1843) - lu(k,1428) * lu(k,1842)
         lu(k,1844) = lu(k,1844) - lu(k,1429) * lu(k,1842)
         lu(k,1845) = lu(k,1845) - lu(k,1430) * lu(k,1842)
         lu(k,1846) = lu(k,1846) - lu(k,1431) * lu(k,1842)
         lu(k,1847) = lu(k,1847) - lu(k,1432) * lu(k,1842)
         lu(k,1848) = lu(k,1848) - lu(k,1433) * lu(k,1842)
         lu(k,1849) = lu(k,1849) - lu(k,1434) * lu(k,1842)
         lu(k,1851) = lu(k,1851) - lu(k,1435) * lu(k,1842)
         lu(k,1853) = lu(k,1853) - lu(k,1436) * lu(k,1842)
         lu(k,1854) = lu(k,1854) - lu(k,1437) * lu(k,1842)
         lu(k,1855) = lu(k,1855) - lu(k,1438) * lu(k,1842)
         lu(k,1856) = lu(k,1856) - lu(k,1439) * lu(k,1842)
         lu(k,1857) = lu(k,1857) - lu(k,1440) * lu(k,1842)
         lu(k,1900) = lu(k,1900) - lu(k,1428) * lu(k,1899)
         lu(k,1901) = lu(k,1901) - lu(k,1429) * lu(k,1899)
         lu(k,1902) = lu(k,1902) - lu(k,1430) * lu(k,1899)
         lu(k,1903) = lu(k,1903) - lu(k,1431) * lu(k,1899)
         lu(k,1904) = lu(k,1904) - lu(k,1432) * lu(k,1899)
         lu(k,1905) = lu(k,1905) - lu(k,1433) * lu(k,1899)
         lu(k,1906) = lu(k,1906) - lu(k,1434) * lu(k,1899)
         lu(k,1908) = lu(k,1908) - lu(k,1435) * lu(k,1899)
         lu(k,1910) = lu(k,1910) - lu(k,1436) * lu(k,1899)
         lu(k,1911) = lu(k,1911) - lu(k,1437) * lu(k,1899)
         lu(k,1912) = lu(k,1912) - lu(k,1438) * lu(k,1899)
         lu(k,1913) = lu(k,1913) - lu(k,1439) * lu(k,1899)
         lu(k,1914) = lu(k,1914) - lu(k,1440) * lu(k,1899)
         lu(k,1920) = lu(k,1920) - lu(k,1428) * lu(k,1919)
         lu(k,1921) = lu(k,1921) - lu(k,1429) * lu(k,1919)
         lu(k,1922) = lu(k,1922) - lu(k,1430) * lu(k,1919)
         lu(k,1923) = lu(k,1923) - lu(k,1431) * lu(k,1919)
         lu(k,1924) = lu(k,1924) - lu(k,1432) * lu(k,1919)
         lu(k,1925) = lu(k,1925) - lu(k,1433) * lu(k,1919)
         lu(k,1926) = lu(k,1926) - lu(k,1434) * lu(k,1919)
         lu(k,1928) = lu(k,1928) - lu(k,1435) * lu(k,1919)
         lu(k,1930) = lu(k,1930) - lu(k,1436) * lu(k,1919)
         lu(k,1931) = lu(k,1931) - lu(k,1437) * lu(k,1919)
         lu(k,1932) = lu(k,1932) - lu(k,1438) * lu(k,1919)
         lu(k,1933) = lu(k,1933) - lu(k,1439) * lu(k,1919)
         lu(k,1934) = lu(k,1934) - lu(k,1440) * lu(k,1919)
         lu(k,1942) = lu(k,1942) - lu(k,1428) * lu(k,1941)
         lu(k,1943) = lu(k,1943) - lu(k,1429) * lu(k,1941)
         lu(k,1944) = lu(k,1944) - lu(k,1430) * lu(k,1941)
         lu(k,1945) = lu(k,1945) - lu(k,1431) * lu(k,1941)
         lu(k,1946) = lu(k,1946) - lu(k,1432) * lu(k,1941)
         lu(k,1947) = lu(k,1947) - lu(k,1433) * lu(k,1941)
         lu(k,1948) = lu(k,1948) - lu(k,1434) * lu(k,1941)
         lu(k,1950) = lu(k,1950) - lu(k,1435) * lu(k,1941)
         lu(k,1952) = lu(k,1952) - lu(k,1436) * lu(k,1941)
         lu(k,1953) = lu(k,1953) - lu(k,1437) * lu(k,1941)
         lu(k,1954) = lu(k,1954) - lu(k,1438) * lu(k,1941)
         lu(k,1955) = lu(k,1955) - lu(k,1439) * lu(k,1941)
         lu(k,1956) = lu(k,1956) - lu(k,1440) * lu(k,1941)
         lu(k,1984) = lu(k,1984) - lu(k,1428) * lu(k,1983)
         lu(k,1985) = lu(k,1985) - lu(k,1429) * lu(k,1983)
         lu(k,1986) = lu(k,1986) - lu(k,1430) * lu(k,1983)
         lu(k,1987) = lu(k,1987) - lu(k,1431) * lu(k,1983)
         lu(k,1988) = lu(k,1988) - lu(k,1432) * lu(k,1983)
         lu(k,1989) = lu(k,1989) - lu(k,1433) * lu(k,1983)
         lu(k,1990) = lu(k,1990) - lu(k,1434) * lu(k,1983)
         lu(k,1992) = lu(k,1992) - lu(k,1435) * lu(k,1983)
         lu(k,1994) = lu(k,1994) - lu(k,1436) * lu(k,1983)
         lu(k,1995) = lu(k,1995) - lu(k,1437) * lu(k,1983)
         lu(k,1996) = lu(k,1996) - lu(k,1438) * lu(k,1983)
         lu(k,1997) = lu(k,1997) - lu(k,1439) * lu(k,1983)
         lu(k,1998) = lu(k,1998) - lu(k,1440) * lu(k,1983)
         lu(k,2008) = lu(k,2008) - lu(k,1428) * lu(k,2007)
         lu(k,2009) = lu(k,2009) - lu(k,1429) * lu(k,2007)
         lu(k,2010) = lu(k,2010) - lu(k,1430) * lu(k,2007)
         lu(k,2011) = lu(k,2011) - lu(k,1431) * lu(k,2007)
         lu(k,2012) = lu(k,2012) - lu(k,1432) * lu(k,2007)
         lu(k,2013) = lu(k,2013) - lu(k,1433) * lu(k,2007)
         lu(k,2014) = lu(k,2014) - lu(k,1434) * lu(k,2007)
         lu(k,2016) = lu(k,2016) - lu(k,1435) * lu(k,2007)
         lu(k,2018) = lu(k,2018) - lu(k,1436) * lu(k,2007)
         lu(k,2019) = lu(k,2019) - lu(k,1437) * lu(k,2007)
         lu(k,2020) = lu(k,2020) - lu(k,1438) * lu(k,2007)
         lu(k,2021) = lu(k,2021) - lu(k,1439) * lu(k,2007)
         lu(k,2022) = lu(k,2022) - lu(k,1440) * lu(k,2007)
         lu(k,2103) = lu(k,2103) - lu(k,1428) * lu(k,2102)
         lu(k,2104) = lu(k,2104) - lu(k,1429) * lu(k,2102)
         lu(k,2105) = lu(k,2105) - lu(k,1430) * lu(k,2102)
         lu(k,2106) = lu(k,2106) - lu(k,1431) * lu(k,2102)
         lu(k,2107) = lu(k,2107) - lu(k,1432) * lu(k,2102)
         lu(k,2108) = lu(k,2108) - lu(k,1433) * lu(k,2102)
         lu(k,2109) = lu(k,2109) - lu(k,1434) * lu(k,2102)
         lu(k,2111) = lu(k,2111) - lu(k,1435) * lu(k,2102)
         lu(k,2113) = lu(k,2113) - lu(k,1436) * lu(k,2102)
         lu(k,2114) = lu(k,2114) - lu(k,1437) * lu(k,2102)
         lu(k,2115) = lu(k,2115) - lu(k,1438) * lu(k,2102)
         lu(k,2116) = lu(k,2116) - lu(k,1439) * lu(k,2102)
         lu(k,2117) = lu(k,2117) - lu(k,1440) * lu(k,2102)
         lu(k,2130) = lu(k,2130) - lu(k,1428) * lu(k,2129)
         lu(k,2131) = lu(k,2131) - lu(k,1429) * lu(k,2129)
         lu(k,2132) = lu(k,2132) - lu(k,1430) * lu(k,2129)
         lu(k,2133) = lu(k,2133) - lu(k,1431) * lu(k,2129)
         lu(k,2134) = lu(k,2134) - lu(k,1432) * lu(k,2129)
         lu(k,2135) = lu(k,2135) - lu(k,1433) * lu(k,2129)
         lu(k,2136) = lu(k,2136) - lu(k,1434) * lu(k,2129)
         lu(k,2138) = lu(k,2138) - lu(k,1435) * lu(k,2129)
         lu(k,2140) = lu(k,2140) - lu(k,1436) * lu(k,2129)
         lu(k,2141) = lu(k,2141) - lu(k,1437) * lu(k,2129)
         lu(k,2142) = lu(k,2142) - lu(k,1438) * lu(k,2129)
         lu(k,2143) = lu(k,2143) - lu(k,1439) * lu(k,2129)
         lu(k,2144) = lu(k,2144) - lu(k,1440) * lu(k,2129)
         lu(k,2156) = lu(k,2156) - lu(k,1428) * lu(k,2155)
         lu(k,2157) = lu(k,2157) - lu(k,1429) * lu(k,2155)
         lu(k,2158) = lu(k,2158) - lu(k,1430) * lu(k,2155)
         lu(k,2159) = lu(k,2159) - lu(k,1431) * lu(k,2155)
         lu(k,2160) = lu(k,2160) - lu(k,1432) * lu(k,2155)
         lu(k,2161) = lu(k,2161) - lu(k,1433) * lu(k,2155)
         lu(k,2162) = lu(k,2162) - lu(k,1434) * lu(k,2155)
         lu(k,2164) = lu(k,2164) - lu(k,1435) * lu(k,2155)
         lu(k,2166) = lu(k,2166) - lu(k,1436) * lu(k,2155)
         lu(k,2167) = lu(k,2167) - lu(k,1437) * lu(k,2155)
         lu(k,2168) = lu(k,2168) - lu(k,1438) * lu(k,2155)
         lu(k,2169) = lu(k,2169) - lu(k,1439) * lu(k,2155)
         lu(k,2170) = lu(k,2170) - lu(k,1440) * lu(k,2155)
      end do
      end subroutine lu_fac27
      subroutine lu_fac28( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1507) = 1._r8 / lu(k,1507)
         lu(k,1508) = lu(k,1508) * lu(k,1507)
         lu(k,1509) = lu(k,1509) * lu(k,1507)
         lu(k,1510) = lu(k,1510) * lu(k,1507)
         lu(k,1511) = lu(k,1511) * lu(k,1507)
         lu(k,1512) = lu(k,1512) * lu(k,1507)
         lu(k,1513) = lu(k,1513) * lu(k,1507)
         lu(k,1514) = lu(k,1514) * lu(k,1507)
         lu(k,1515) = lu(k,1515) * lu(k,1507)
         lu(k,1516) = lu(k,1516) * lu(k,1507)
         lu(k,1517) = lu(k,1517) * lu(k,1507)
         lu(k,1518) = lu(k,1518) * lu(k,1507)
         lu(k,1519) = lu(k,1519) * lu(k,1507)
         lu(k,1520) = lu(k,1520) * lu(k,1507)
         lu(k,1521) = lu(k,1521) * lu(k,1507)
         lu(k,1543) = lu(k,1543) - lu(k,1508) * lu(k,1542)
         lu(k,1544) = lu(k,1544) - lu(k,1509) * lu(k,1542)
         lu(k,1545) = lu(k,1545) - lu(k,1510) * lu(k,1542)
         lu(k,1546) = lu(k,1546) - lu(k,1511) * lu(k,1542)
         lu(k,1547) = lu(k,1547) - lu(k,1512) * lu(k,1542)
         lu(k,1548) = lu(k,1548) - lu(k,1513) * lu(k,1542)
         lu(k,1549) = lu(k,1549) - lu(k,1514) * lu(k,1542)
         lu(k,1550) = lu(k,1550) - lu(k,1515) * lu(k,1542)
         lu(k,1551) = lu(k,1551) - lu(k,1516) * lu(k,1542)
         lu(k,1552) = lu(k,1552) - lu(k,1517) * lu(k,1542)
         lu(k,1553) = lu(k,1553) - lu(k,1518) * lu(k,1542)
         lu(k,1554) = lu(k,1554) - lu(k,1519) * lu(k,1542)
         lu(k,1555) = lu(k,1555) - lu(k,1520) * lu(k,1542)
         lu(k,1556) = lu(k,1556) - lu(k,1521) * lu(k,1542)
         lu(k,1569) = lu(k,1569) - lu(k,1508) * lu(k,1568)
         lu(k,1570) = lu(k,1570) - lu(k,1509) * lu(k,1568)
         lu(k,1571) = lu(k,1571) - lu(k,1510) * lu(k,1568)
         lu(k,1572) = lu(k,1572) - lu(k,1511) * lu(k,1568)
         lu(k,1573) = lu(k,1573) - lu(k,1512) * lu(k,1568)
         lu(k,1574) = lu(k,1574) - lu(k,1513) * lu(k,1568)
         lu(k,1575) = lu(k,1575) - lu(k,1514) * lu(k,1568)
         lu(k,1576) = lu(k,1576) - lu(k,1515) * lu(k,1568)
         lu(k,1577) = lu(k,1577) - lu(k,1516) * lu(k,1568)
         lu(k,1578) = lu(k,1578) - lu(k,1517) * lu(k,1568)
         lu(k,1579) = lu(k,1579) - lu(k,1518) * lu(k,1568)
         lu(k,1580) = lu(k,1580) - lu(k,1519) * lu(k,1568)
         lu(k,1581) = lu(k,1581) - lu(k,1520) * lu(k,1568)
         lu(k,1582) = lu(k,1582) - lu(k,1521) * lu(k,1568)
         lu(k,1717) = lu(k,1717) - lu(k,1508) * lu(k,1716)
         lu(k,1718) = lu(k,1718) - lu(k,1509) * lu(k,1716)
         lu(k,1719) = lu(k,1719) - lu(k,1510) * lu(k,1716)
         lu(k,1720) = lu(k,1720) - lu(k,1511) * lu(k,1716)
         lu(k,1721) = lu(k,1721) - lu(k,1512) * lu(k,1716)
         lu(k,1722) = lu(k,1722) - lu(k,1513) * lu(k,1716)
         lu(k,1723) = lu(k,1723) - lu(k,1514) * lu(k,1716)
         lu(k,1724) = lu(k,1724) - lu(k,1515) * lu(k,1716)
         lu(k,1725) = lu(k,1725) - lu(k,1516) * lu(k,1716)
         lu(k,1726) = lu(k,1726) - lu(k,1517) * lu(k,1716)
         lu(k,1727) = lu(k,1727) - lu(k,1518) * lu(k,1716)
         lu(k,1728) = lu(k,1728) - lu(k,1519) * lu(k,1716)
         lu(k,1729) = lu(k,1729) - lu(k,1520) * lu(k,1716)
         lu(k,1730) = lu(k,1730) - lu(k,1521) * lu(k,1716)
         lu(k,1779) = lu(k,1779) - lu(k,1508) * lu(k,1778)
         lu(k,1780) = lu(k,1780) - lu(k,1509) * lu(k,1778)
         lu(k,1781) = lu(k,1781) - lu(k,1510) * lu(k,1778)
         lu(k,1782) = lu(k,1782) - lu(k,1511) * lu(k,1778)
         lu(k,1783) = lu(k,1783) - lu(k,1512) * lu(k,1778)
         lu(k,1784) = lu(k,1784) - lu(k,1513) * lu(k,1778)
         lu(k,1785) = lu(k,1785) - lu(k,1514) * lu(k,1778)
         lu(k,1786) = lu(k,1786) - lu(k,1515) * lu(k,1778)
         lu(k,1787) = lu(k,1787) - lu(k,1516) * lu(k,1778)
         lu(k,1788) = lu(k,1788) - lu(k,1517) * lu(k,1778)
         lu(k,1789) = lu(k,1789) - lu(k,1518) * lu(k,1778)
         lu(k,1790) = lu(k,1790) - lu(k,1519) * lu(k,1778)
         lu(k,1791) = lu(k,1791) - lu(k,1520) * lu(k,1778)
         lu(k,1792) = lu(k,1792) - lu(k,1521) * lu(k,1778)
         lu(k,1820) = lu(k,1820) - lu(k,1508) * lu(k,1819)
         lu(k,1821) = lu(k,1821) - lu(k,1509) * lu(k,1819)
         lu(k,1822) = lu(k,1822) - lu(k,1510) * lu(k,1819)
         lu(k,1823) = lu(k,1823) - lu(k,1511) * lu(k,1819)
         lu(k,1824) = lu(k,1824) - lu(k,1512) * lu(k,1819)
         lu(k,1825) = lu(k,1825) - lu(k,1513) * lu(k,1819)
         lu(k,1826) = lu(k,1826) - lu(k,1514) * lu(k,1819)
         lu(k,1827) = lu(k,1827) - lu(k,1515) * lu(k,1819)
         lu(k,1828) = lu(k,1828) - lu(k,1516) * lu(k,1819)
         lu(k,1829) = lu(k,1829) - lu(k,1517) * lu(k,1819)
         lu(k,1830) = lu(k,1830) - lu(k,1518) * lu(k,1819)
         lu(k,1831) = lu(k,1831) - lu(k,1519) * lu(k,1819)
         lu(k,1832) = lu(k,1832) - lu(k,1520) * lu(k,1819)
         lu(k,1833) = lu(k,1833) - lu(k,1521) * lu(k,1819)
         lu(k,1844) = lu(k,1844) - lu(k,1508) * lu(k,1843)
         lu(k,1845) = lu(k,1845) - lu(k,1509) * lu(k,1843)
         lu(k,1846) = lu(k,1846) - lu(k,1510) * lu(k,1843)
         lu(k,1847) = lu(k,1847) - lu(k,1511) * lu(k,1843)
         lu(k,1848) = lu(k,1848) - lu(k,1512) * lu(k,1843)
         lu(k,1849) = lu(k,1849) - lu(k,1513) * lu(k,1843)
         lu(k,1850) = lu(k,1850) - lu(k,1514) * lu(k,1843)
         lu(k,1851) = lu(k,1851) - lu(k,1515) * lu(k,1843)
         lu(k,1852) = lu(k,1852) - lu(k,1516) * lu(k,1843)
         lu(k,1853) = lu(k,1853) - lu(k,1517) * lu(k,1843)
         lu(k,1854) = lu(k,1854) - lu(k,1518) * lu(k,1843)
         lu(k,1855) = lu(k,1855) - lu(k,1519) * lu(k,1843)
         lu(k,1856) = lu(k,1856) - lu(k,1520) * lu(k,1843)
         lu(k,1857) = lu(k,1857) - lu(k,1521) * lu(k,1843)
         lu(k,1901) = lu(k,1901) - lu(k,1508) * lu(k,1900)
         lu(k,1902) = lu(k,1902) - lu(k,1509) * lu(k,1900)
         lu(k,1903) = lu(k,1903) - lu(k,1510) * lu(k,1900)
         lu(k,1904) = lu(k,1904) - lu(k,1511) * lu(k,1900)
         lu(k,1905) = lu(k,1905) - lu(k,1512) * lu(k,1900)
         lu(k,1906) = lu(k,1906) - lu(k,1513) * lu(k,1900)
         lu(k,1907) = lu(k,1907) - lu(k,1514) * lu(k,1900)
         lu(k,1908) = lu(k,1908) - lu(k,1515) * lu(k,1900)
         lu(k,1909) = lu(k,1909) - lu(k,1516) * lu(k,1900)
         lu(k,1910) = lu(k,1910) - lu(k,1517) * lu(k,1900)
         lu(k,1911) = lu(k,1911) - lu(k,1518) * lu(k,1900)
         lu(k,1912) = lu(k,1912) - lu(k,1519) * lu(k,1900)
         lu(k,1913) = lu(k,1913) - lu(k,1520) * lu(k,1900)
         lu(k,1914) = lu(k,1914) - lu(k,1521) * lu(k,1900)
         lu(k,1921) = lu(k,1921) - lu(k,1508) * lu(k,1920)
         lu(k,1922) = lu(k,1922) - lu(k,1509) * lu(k,1920)
         lu(k,1923) = lu(k,1923) - lu(k,1510) * lu(k,1920)
         lu(k,1924) = lu(k,1924) - lu(k,1511) * lu(k,1920)
         lu(k,1925) = lu(k,1925) - lu(k,1512) * lu(k,1920)
         lu(k,1926) = lu(k,1926) - lu(k,1513) * lu(k,1920)
         lu(k,1927) = lu(k,1927) - lu(k,1514) * lu(k,1920)
         lu(k,1928) = lu(k,1928) - lu(k,1515) * lu(k,1920)
         lu(k,1929) = lu(k,1929) - lu(k,1516) * lu(k,1920)
         lu(k,1930) = lu(k,1930) - lu(k,1517) * lu(k,1920)
         lu(k,1931) = lu(k,1931) - lu(k,1518) * lu(k,1920)
         lu(k,1932) = lu(k,1932) - lu(k,1519) * lu(k,1920)
         lu(k,1933) = lu(k,1933) - lu(k,1520) * lu(k,1920)
         lu(k,1934) = lu(k,1934) - lu(k,1521) * lu(k,1920)
         lu(k,1943) = lu(k,1943) - lu(k,1508) * lu(k,1942)
         lu(k,1944) = lu(k,1944) - lu(k,1509) * lu(k,1942)
         lu(k,1945) = lu(k,1945) - lu(k,1510) * lu(k,1942)
         lu(k,1946) = lu(k,1946) - lu(k,1511) * lu(k,1942)
         lu(k,1947) = lu(k,1947) - lu(k,1512) * lu(k,1942)
         lu(k,1948) = lu(k,1948) - lu(k,1513) * lu(k,1942)
         lu(k,1949) = lu(k,1949) - lu(k,1514) * lu(k,1942)
         lu(k,1950) = lu(k,1950) - lu(k,1515) * lu(k,1942)
         lu(k,1951) = lu(k,1951) - lu(k,1516) * lu(k,1942)
         lu(k,1952) = lu(k,1952) - lu(k,1517) * lu(k,1942)
         lu(k,1953) = lu(k,1953) - lu(k,1518) * lu(k,1942)
         lu(k,1954) = lu(k,1954) - lu(k,1519) * lu(k,1942)
         lu(k,1955) = lu(k,1955) - lu(k,1520) * lu(k,1942)
         lu(k,1956) = lu(k,1956) - lu(k,1521) * lu(k,1942)
         lu(k,1985) = lu(k,1985) - lu(k,1508) * lu(k,1984)
         lu(k,1986) = lu(k,1986) - lu(k,1509) * lu(k,1984)
         lu(k,1987) = lu(k,1987) - lu(k,1510) * lu(k,1984)
         lu(k,1988) = lu(k,1988) - lu(k,1511) * lu(k,1984)
         lu(k,1989) = lu(k,1989) - lu(k,1512) * lu(k,1984)
         lu(k,1990) = lu(k,1990) - lu(k,1513) * lu(k,1984)
         lu(k,1991) = lu(k,1991) - lu(k,1514) * lu(k,1984)
         lu(k,1992) = lu(k,1992) - lu(k,1515) * lu(k,1984)
         lu(k,1993) = lu(k,1993) - lu(k,1516) * lu(k,1984)
         lu(k,1994) = lu(k,1994) - lu(k,1517) * lu(k,1984)
         lu(k,1995) = lu(k,1995) - lu(k,1518) * lu(k,1984)
         lu(k,1996) = lu(k,1996) - lu(k,1519) * lu(k,1984)
         lu(k,1997) = lu(k,1997) - lu(k,1520) * lu(k,1984)
         lu(k,1998) = lu(k,1998) - lu(k,1521) * lu(k,1984)
         lu(k,2009) = lu(k,2009) - lu(k,1508) * lu(k,2008)
         lu(k,2010) = lu(k,2010) - lu(k,1509) * lu(k,2008)
         lu(k,2011) = lu(k,2011) - lu(k,1510) * lu(k,2008)
         lu(k,2012) = lu(k,2012) - lu(k,1511) * lu(k,2008)
         lu(k,2013) = lu(k,2013) - lu(k,1512) * lu(k,2008)
         lu(k,2014) = lu(k,2014) - lu(k,1513) * lu(k,2008)
         lu(k,2015) = lu(k,2015) - lu(k,1514) * lu(k,2008)
         lu(k,2016) = lu(k,2016) - lu(k,1515) * lu(k,2008)
         lu(k,2017) = lu(k,2017) - lu(k,1516) * lu(k,2008)
         lu(k,2018) = lu(k,2018) - lu(k,1517) * lu(k,2008)
         lu(k,2019) = lu(k,2019) - lu(k,1518) * lu(k,2008)
         lu(k,2020) = lu(k,2020) - lu(k,1519) * lu(k,2008)
         lu(k,2021) = lu(k,2021) - lu(k,1520) * lu(k,2008)
         lu(k,2022) = lu(k,2022) - lu(k,1521) * lu(k,2008)
         lu(k,2104) = lu(k,2104) - lu(k,1508) * lu(k,2103)
         lu(k,2105) = lu(k,2105) - lu(k,1509) * lu(k,2103)
         lu(k,2106) = lu(k,2106) - lu(k,1510) * lu(k,2103)
         lu(k,2107) = lu(k,2107) - lu(k,1511) * lu(k,2103)
         lu(k,2108) = lu(k,2108) - lu(k,1512) * lu(k,2103)
         lu(k,2109) = lu(k,2109) - lu(k,1513) * lu(k,2103)
         lu(k,2110) = lu(k,2110) - lu(k,1514) * lu(k,2103)
         lu(k,2111) = lu(k,2111) - lu(k,1515) * lu(k,2103)
         lu(k,2112) = lu(k,2112) - lu(k,1516) * lu(k,2103)
         lu(k,2113) = lu(k,2113) - lu(k,1517) * lu(k,2103)
         lu(k,2114) = lu(k,2114) - lu(k,1518) * lu(k,2103)
         lu(k,2115) = lu(k,2115) - lu(k,1519) * lu(k,2103)
         lu(k,2116) = lu(k,2116) - lu(k,1520) * lu(k,2103)
         lu(k,2117) = lu(k,2117) - lu(k,1521) * lu(k,2103)
         lu(k,2131) = lu(k,2131) - lu(k,1508) * lu(k,2130)
         lu(k,2132) = lu(k,2132) - lu(k,1509) * lu(k,2130)
         lu(k,2133) = lu(k,2133) - lu(k,1510) * lu(k,2130)
         lu(k,2134) = lu(k,2134) - lu(k,1511) * lu(k,2130)
         lu(k,2135) = lu(k,2135) - lu(k,1512) * lu(k,2130)
         lu(k,2136) = lu(k,2136) - lu(k,1513) * lu(k,2130)
         lu(k,2137) = lu(k,2137) - lu(k,1514) * lu(k,2130)
         lu(k,2138) = lu(k,2138) - lu(k,1515) * lu(k,2130)
         lu(k,2139) = lu(k,2139) - lu(k,1516) * lu(k,2130)
         lu(k,2140) = lu(k,2140) - lu(k,1517) * lu(k,2130)
         lu(k,2141) = lu(k,2141) - lu(k,1518) * lu(k,2130)
         lu(k,2142) = lu(k,2142) - lu(k,1519) * lu(k,2130)
         lu(k,2143) = lu(k,2143) - lu(k,1520) * lu(k,2130)
         lu(k,2144) = lu(k,2144) - lu(k,1521) * lu(k,2130)
         lu(k,2157) = lu(k,2157) - lu(k,1508) * lu(k,2156)
         lu(k,2158) = lu(k,2158) - lu(k,1509) * lu(k,2156)
         lu(k,2159) = lu(k,2159) - lu(k,1510) * lu(k,2156)
         lu(k,2160) = lu(k,2160) - lu(k,1511) * lu(k,2156)
         lu(k,2161) = lu(k,2161) - lu(k,1512) * lu(k,2156)
         lu(k,2162) = lu(k,2162) - lu(k,1513) * lu(k,2156)
         lu(k,2163) = lu(k,2163) - lu(k,1514) * lu(k,2156)
         lu(k,2164) = lu(k,2164) - lu(k,1515) * lu(k,2156)
         lu(k,2165) = lu(k,2165) - lu(k,1516) * lu(k,2156)
         lu(k,2166) = lu(k,2166) - lu(k,1517) * lu(k,2156)
         lu(k,2167) = lu(k,2167) - lu(k,1518) * lu(k,2156)
         lu(k,2168) = lu(k,2168) - lu(k,1519) * lu(k,2156)
         lu(k,2169) = lu(k,2169) - lu(k,1520) * lu(k,2156)
         lu(k,2170) = lu(k,2170) - lu(k,1521) * lu(k,2156)
         lu(k,1543) = 1._r8 / lu(k,1543)
         lu(k,1544) = lu(k,1544) * lu(k,1543)
         lu(k,1545) = lu(k,1545) * lu(k,1543)
         lu(k,1546) = lu(k,1546) * lu(k,1543)
         lu(k,1547) = lu(k,1547) * lu(k,1543)
         lu(k,1548) = lu(k,1548) * lu(k,1543)
         lu(k,1549) = lu(k,1549) * lu(k,1543)
         lu(k,1550) = lu(k,1550) * lu(k,1543)
         lu(k,1551) = lu(k,1551) * lu(k,1543)
         lu(k,1552) = lu(k,1552) * lu(k,1543)
         lu(k,1553) = lu(k,1553) * lu(k,1543)
         lu(k,1554) = lu(k,1554) * lu(k,1543)
         lu(k,1555) = lu(k,1555) * lu(k,1543)
         lu(k,1556) = lu(k,1556) * lu(k,1543)
         lu(k,1570) = lu(k,1570) - lu(k,1544) * lu(k,1569)
         lu(k,1571) = lu(k,1571) - lu(k,1545) * lu(k,1569)
         lu(k,1572) = lu(k,1572) - lu(k,1546) * lu(k,1569)
         lu(k,1573) = lu(k,1573) - lu(k,1547) * lu(k,1569)
         lu(k,1574) = lu(k,1574) - lu(k,1548) * lu(k,1569)
         lu(k,1575) = lu(k,1575) - lu(k,1549) * lu(k,1569)
         lu(k,1576) = lu(k,1576) - lu(k,1550) * lu(k,1569)
         lu(k,1577) = lu(k,1577) - lu(k,1551) * lu(k,1569)
         lu(k,1578) = lu(k,1578) - lu(k,1552) * lu(k,1569)
         lu(k,1579) = lu(k,1579) - lu(k,1553) * lu(k,1569)
         lu(k,1580) = lu(k,1580) - lu(k,1554) * lu(k,1569)
         lu(k,1581) = lu(k,1581) - lu(k,1555) * lu(k,1569)
         lu(k,1582) = lu(k,1582) - lu(k,1556) * lu(k,1569)
         lu(k,1718) = lu(k,1718) - lu(k,1544) * lu(k,1717)
         lu(k,1719) = lu(k,1719) - lu(k,1545) * lu(k,1717)
         lu(k,1720) = lu(k,1720) - lu(k,1546) * lu(k,1717)
         lu(k,1721) = lu(k,1721) - lu(k,1547) * lu(k,1717)
         lu(k,1722) = lu(k,1722) - lu(k,1548) * lu(k,1717)
         lu(k,1723) = lu(k,1723) - lu(k,1549) * lu(k,1717)
         lu(k,1724) = lu(k,1724) - lu(k,1550) * lu(k,1717)
         lu(k,1725) = lu(k,1725) - lu(k,1551) * lu(k,1717)
         lu(k,1726) = lu(k,1726) - lu(k,1552) * lu(k,1717)
         lu(k,1727) = lu(k,1727) - lu(k,1553) * lu(k,1717)
         lu(k,1728) = lu(k,1728) - lu(k,1554) * lu(k,1717)
         lu(k,1729) = lu(k,1729) - lu(k,1555) * lu(k,1717)
         lu(k,1730) = lu(k,1730) - lu(k,1556) * lu(k,1717)
         lu(k,1780) = lu(k,1780) - lu(k,1544) * lu(k,1779)
         lu(k,1781) = lu(k,1781) - lu(k,1545) * lu(k,1779)
         lu(k,1782) = lu(k,1782) - lu(k,1546) * lu(k,1779)
         lu(k,1783) = lu(k,1783) - lu(k,1547) * lu(k,1779)
         lu(k,1784) = lu(k,1784) - lu(k,1548) * lu(k,1779)
         lu(k,1785) = lu(k,1785) - lu(k,1549) * lu(k,1779)
         lu(k,1786) = lu(k,1786) - lu(k,1550) * lu(k,1779)
         lu(k,1787) = lu(k,1787) - lu(k,1551) * lu(k,1779)
         lu(k,1788) = lu(k,1788) - lu(k,1552) * lu(k,1779)
         lu(k,1789) = lu(k,1789) - lu(k,1553) * lu(k,1779)
         lu(k,1790) = lu(k,1790) - lu(k,1554) * lu(k,1779)
         lu(k,1791) = lu(k,1791) - lu(k,1555) * lu(k,1779)
         lu(k,1792) = lu(k,1792) - lu(k,1556) * lu(k,1779)
         lu(k,1821) = lu(k,1821) - lu(k,1544) * lu(k,1820)
         lu(k,1822) = lu(k,1822) - lu(k,1545) * lu(k,1820)
         lu(k,1823) = lu(k,1823) - lu(k,1546) * lu(k,1820)
         lu(k,1824) = lu(k,1824) - lu(k,1547) * lu(k,1820)
         lu(k,1825) = lu(k,1825) - lu(k,1548) * lu(k,1820)
         lu(k,1826) = lu(k,1826) - lu(k,1549) * lu(k,1820)
         lu(k,1827) = lu(k,1827) - lu(k,1550) * lu(k,1820)
         lu(k,1828) = lu(k,1828) - lu(k,1551) * lu(k,1820)
         lu(k,1829) = lu(k,1829) - lu(k,1552) * lu(k,1820)
         lu(k,1830) = lu(k,1830) - lu(k,1553) * lu(k,1820)
         lu(k,1831) = lu(k,1831) - lu(k,1554) * lu(k,1820)
         lu(k,1832) = lu(k,1832) - lu(k,1555) * lu(k,1820)
         lu(k,1833) = lu(k,1833) - lu(k,1556) * lu(k,1820)
         lu(k,1845) = lu(k,1845) - lu(k,1544) * lu(k,1844)
         lu(k,1846) = lu(k,1846) - lu(k,1545) * lu(k,1844)
         lu(k,1847) = lu(k,1847) - lu(k,1546) * lu(k,1844)
         lu(k,1848) = lu(k,1848) - lu(k,1547) * lu(k,1844)
         lu(k,1849) = lu(k,1849) - lu(k,1548) * lu(k,1844)
         lu(k,1850) = lu(k,1850) - lu(k,1549) * lu(k,1844)
         lu(k,1851) = lu(k,1851) - lu(k,1550) * lu(k,1844)
         lu(k,1852) = lu(k,1852) - lu(k,1551) * lu(k,1844)
         lu(k,1853) = lu(k,1853) - lu(k,1552) * lu(k,1844)
         lu(k,1854) = lu(k,1854) - lu(k,1553) * lu(k,1844)
         lu(k,1855) = lu(k,1855) - lu(k,1554) * lu(k,1844)
         lu(k,1856) = lu(k,1856) - lu(k,1555) * lu(k,1844)
         lu(k,1857) = lu(k,1857) - lu(k,1556) * lu(k,1844)
         lu(k,1902) = lu(k,1902) - lu(k,1544) * lu(k,1901)
         lu(k,1903) = lu(k,1903) - lu(k,1545) * lu(k,1901)
         lu(k,1904) = lu(k,1904) - lu(k,1546) * lu(k,1901)
         lu(k,1905) = lu(k,1905) - lu(k,1547) * lu(k,1901)
         lu(k,1906) = lu(k,1906) - lu(k,1548) * lu(k,1901)
         lu(k,1907) = lu(k,1907) - lu(k,1549) * lu(k,1901)
         lu(k,1908) = lu(k,1908) - lu(k,1550) * lu(k,1901)
         lu(k,1909) = lu(k,1909) - lu(k,1551) * lu(k,1901)
         lu(k,1910) = lu(k,1910) - lu(k,1552) * lu(k,1901)
         lu(k,1911) = lu(k,1911) - lu(k,1553) * lu(k,1901)
         lu(k,1912) = lu(k,1912) - lu(k,1554) * lu(k,1901)
         lu(k,1913) = lu(k,1913) - lu(k,1555) * lu(k,1901)
         lu(k,1914) = lu(k,1914) - lu(k,1556) * lu(k,1901)
         lu(k,1922) = lu(k,1922) - lu(k,1544) * lu(k,1921)
         lu(k,1923) = lu(k,1923) - lu(k,1545) * lu(k,1921)
         lu(k,1924) = lu(k,1924) - lu(k,1546) * lu(k,1921)
         lu(k,1925) = lu(k,1925) - lu(k,1547) * lu(k,1921)
         lu(k,1926) = lu(k,1926) - lu(k,1548) * lu(k,1921)
         lu(k,1927) = lu(k,1927) - lu(k,1549) * lu(k,1921)
         lu(k,1928) = lu(k,1928) - lu(k,1550) * lu(k,1921)
         lu(k,1929) = lu(k,1929) - lu(k,1551) * lu(k,1921)
         lu(k,1930) = lu(k,1930) - lu(k,1552) * lu(k,1921)
         lu(k,1931) = lu(k,1931) - lu(k,1553) * lu(k,1921)
         lu(k,1932) = lu(k,1932) - lu(k,1554) * lu(k,1921)
         lu(k,1933) = lu(k,1933) - lu(k,1555) * lu(k,1921)
         lu(k,1934) = lu(k,1934) - lu(k,1556) * lu(k,1921)
         lu(k,1944) = lu(k,1944) - lu(k,1544) * lu(k,1943)
         lu(k,1945) = lu(k,1945) - lu(k,1545) * lu(k,1943)
         lu(k,1946) = lu(k,1946) - lu(k,1546) * lu(k,1943)
         lu(k,1947) = lu(k,1947) - lu(k,1547) * lu(k,1943)
         lu(k,1948) = lu(k,1948) - lu(k,1548) * lu(k,1943)
         lu(k,1949) = lu(k,1949) - lu(k,1549) * lu(k,1943)
         lu(k,1950) = lu(k,1950) - lu(k,1550) * lu(k,1943)
         lu(k,1951) = lu(k,1951) - lu(k,1551) * lu(k,1943)
         lu(k,1952) = lu(k,1952) - lu(k,1552) * lu(k,1943)
         lu(k,1953) = lu(k,1953) - lu(k,1553) * lu(k,1943)
         lu(k,1954) = lu(k,1954) - lu(k,1554) * lu(k,1943)
         lu(k,1955) = lu(k,1955) - lu(k,1555) * lu(k,1943)
         lu(k,1956) = lu(k,1956) - lu(k,1556) * lu(k,1943)
         lu(k,1986) = lu(k,1986) - lu(k,1544) * lu(k,1985)
         lu(k,1987) = lu(k,1987) - lu(k,1545) * lu(k,1985)
         lu(k,1988) = lu(k,1988) - lu(k,1546) * lu(k,1985)
         lu(k,1989) = lu(k,1989) - lu(k,1547) * lu(k,1985)
         lu(k,1990) = lu(k,1990) - lu(k,1548) * lu(k,1985)
         lu(k,1991) = lu(k,1991) - lu(k,1549) * lu(k,1985)
         lu(k,1992) = lu(k,1992) - lu(k,1550) * lu(k,1985)
         lu(k,1993) = lu(k,1993) - lu(k,1551) * lu(k,1985)
         lu(k,1994) = lu(k,1994) - lu(k,1552) * lu(k,1985)
         lu(k,1995) = lu(k,1995) - lu(k,1553) * lu(k,1985)
         lu(k,1996) = lu(k,1996) - lu(k,1554) * lu(k,1985)
         lu(k,1997) = lu(k,1997) - lu(k,1555) * lu(k,1985)
         lu(k,1998) = lu(k,1998) - lu(k,1556) * lu(k,1985)
         lu(k,2010) = lu(k,2010) - lu(k,1544) * lu(k,2009)
         lu(k,2011) = lu(k,2011) - lu(k,1545) * lu(k,2009)
         lu(k,2012) = lu(k,2012) - lu(k,1546) * lu(k,2009)
         lu(k,2013) = lu(k,2013) - lu(k,1547) * lu(k,2009)
         lu(k,2014) = lu(k,2014) - lu(k,1548) * lu(k,2009)
         lu(k,2015) = lu(k,2015) - lu(k,1549) * lu(k,2009)
         lu(k,2016) = lu(k,2016) - lu(k,1550) * lu(k,2009)
         lu(k,2017) = lu(k,2017) - lu(k,1551) * lu(k,2009)
         lu(k,2018) = lu(k,2018) - lu(k,1552) * lu(k,2009)
         lu(k,2019) = lu(k,2019) - lu(k,1553) * lu(k,2009)
         lu(k,2020) = lu(k,2020) - lu(k,1554) * lu(k,2009)
         lu(k,2021) = lu(k,2021) - lu(k,1555) * lu(k,2009)
         lu(k,2022) = lu(k,2022) - lu(k,1556) * lu(k,2009)
         lu(k,2105) = lu(k,2105) - lu(k,1544) * lu(k,2104)
         lu(k,2106) = lu(k,2106) - lu(k,1545) * lu(k,2104)
         lu(k,2107) = lu(k,2107) - lu(k,1546) * lu(k,2104)
         lu(k,2108) = lu(k,2108) - lu(k,1547) * lu(k,2104)
         lu(k,2109) = lu(k,2109) - lu(k,1548) * lu(k,2104)
         lu(k,2110) = lu(k,2110) - lu(k,1549) * lu(k,2104)
         lu(k,2111) = lu(k,2111) - lu(k,1550) * lu(k,2104)
         lu(k,2112) = lu(k,2112) - lu(k,1551) * lu(k,2104)
         lu(k,2113) = lu(k,2113) - lu(k,1552) * lu(k,2104)
         lu(k,2114) = lu(k,2114) - lu(k,1553) * lu(k,2104)
         lu(k,2115) = lu(k,2115) - lu(k,1554) * lu(k,2104)
         lu(k,2116) = lu(k,2116) - lu(k,1555) * lu(k,2104)
         lu(k,2117) = lu(k,2117) - lu(k,1556) * lu(k,2104)
         lu(k,2132) = lu(k,2132) - lu(k,1544) * lu(k,2131)
         lu(k,2133) = lu(k,2133) - lu(k,1545) * lu(k,2131)
         lu(k,2134) = lu(k,2134) - lu(k,1546) * lu(k,2131)
         lu(k,2135) = lu(k,2135) - lu(k,1547) * lu(k,2131)
         lu(k,2136) = lu(k,2136) - lu(k,1548) * lu(k,2131)
         lu(k,2137) = lu(k,2137) - lu(k,1549) * lu(k,2131)
         lu(k,2138) = lu(k,2138) - lu(k,1550) * lu(k,2131)
         lu(k,2139) = lu(k,2139) - lu(k,1551) * lu(k,2131)
         lu(k,2140) = lu(k,2140) - lu(k,1552) * lu(k,2131)
         lu(k,2141) = lu(k,2141) - lu(k,1553) * lu(k,2131)
         lu(k,2142) = lu(k,2142) - lu(k,1554) * lu(k,2131)
         lu(k,2143) = lu(k,2143) - lu(k,1555) * lu(k,2131)
         lu(k,2144) = lu(k,2144) - lu(k,1556) * lu(k,2131)
         lu(k,2158) = lu(k,2158) - lu(k,1544) * lu(k,2157)
         lu(k,2159) = lu(k,2159) - lu(k,1545) * lu(k,2157)
         lu(k,2160) = lu(k,2160) - lu(k,1546) * lu(k,2157)
         lu(k,2161) = lu(k,2161) - lu(k,1547) * lu(k,2157)
         lu(k,2162) = lu(k,2162) - lu(k,1548) * lu(k,2157)
         lu(k,2163) = lu(k,2163) - lu(k,1549) * lu(k,2157)
         lu(k,2164) = lu(k,2164) - lu(k,1550) * lu(k,2157)
         lu(k,2165) = lu(k,2165) - lu(k,1551) * lu(k,2157)
         lu(k,2166) = lu(k,2166) - lu(k,1552) * lu(k,2157)
         lu(k,2167) = lu(k,2167) - lu(k,1553) * lu(k,2157)
         lu(k,2168) = lu(k,2168) - lu(k,1554) * lu(k,2157)
         lu(k,2169) = lu(k,2169) - lu(k,1555) * lu(k,2157)
         lu(k,2170) = lu(k,2170) - lu(k,1556) * lu(k,2157)
         lu(k,1570) = 1._r8 / lu(k,1570)
         lu(k,1571) = lu(k,1571) * lu(k,1570)
         lu(k,1572) = lu(k,1572) * lu(k,1570)
         lu(k,1573) = lu(k,1573) * lu(k,1570)
         lu(k,1574) = lu(k,1574) * lu(k,1570)
         lu(k,1575) = lu(k,1575) * lu(k,1570)
         lu(k,1576) = lu(k,1576) * lu(k,1570)
         lu(k,1577) = lu(k,1577) * lu(k,1570)
         lu(k,1578) = lu(k,1578) * lu(k,1570)
         lu(k,1579) = lu(k,1579) * lu(k,1570)
         lu(k,1580) = lu(k,1580) * lu(k,1570)
         lu(k,1581) = lu(k,1581) * lu(k,1570)
         lu(k,1582) = lu(k,1582) * lu(k,1570)
         lu(k,1719) = lu(k,1719) - lu(k,1571) * lu(k,1718)
         lu(k,1720) = lu(k,1720) - lu(k,1572) * lu(k,1718)
         lu(k,1721) = lu(k,1721) - lu(k,1573) * lu(k,1718)
         lu(k,1722) = lu(k,1722) - lu(k,1574) * lu(k,1718)
         lu(k,1723) = lu(k,1723) - lu(k,1575) * lu(k,1718)
         lu(k,1724) = lu(k,1724) - lu(k,1576) * lu(k,1718)
         lu(k,1725) = lu(k,1725) - lu(k,1577) * lu(k,1718)
         lu(k,1726) = lu(k,1726) - lu(k,1578) * lu(k,1718)
         lu(k,1727) = lu(k,1727) - lu(k,1579) * lu(k,1718)
         lu(k,1728) = lu(k,1728) - lu(k,1580) * lu(k,1718)
         lu(k,1729) = lu(k,1729) - lu(k,1581) * lu(k,1718)
         lu(k,1730) = lu(k,1730) - lu(k,1582) * lu(k,1718)
         lu(k,1781) = lu(k,1781) - lu(k,1571) * lu(k,1780)
         lu(k,1782) = lu(k,1782) - lu(k,1572) * lu(k,1780)
         lu(k,1783) = lu(k,1783) - lu(k,1573) * lu(k,1780)
         lu(k,1784) = lu(k,1784) - lu(k,1574) * lu(k,1780)
         lu(k,1785) = lu(k,1785) - lu(k,1575) * lu(k,1780)
         lu(k,1786) = lu(k,1786) - lu(k,1576) * lu(k,1780)
         lu(k,1787) = lu(k,1787) - lu(k,1577) * lu(k,1780)
         lu(k,1788) = lu(k,1788) - lu(k,1578) * lu(k,1780)
         lu(k,1789) = lu(k,1789) - lu(k,1579) * lu(k,1780)
         lu(k,1790) = lu(k,1790) - lu(k,1580) * lu(k,1780)
         lu(k,1791) = lu(k,1791) - lu(k,1581) * lu(k,1780)
         lu(k,1792) = lu(k,1792) - lu(k,1582) * lu(k,1780)
         lu(k,1822) = lu(k,1822) - lu(k,1571) * lu(k,1821)
         lu(k,1823) = lu(k,1823) - lu(k,1572) * lu(k,1821)
         lu(k,1824) = lu(k,1824) - lu(k,1573) * lu(k,1821)
         lu(k,1825) = lu(k,1825) - lu(k,1574) * lu(k,1821)
         lu(k,1826) = lu(k,1826) - lu(k,1575) * lu(k,1821)
         lu(k,1827) = lu(k,1827) - lu(k,1576) * lu(k,1821)
         lu(k,1828) = lu(k,1828) - lu(k,1577) * lu(k,1821)
         lu(k,1829) = lu(k,1829) - lu(k,1578) * lu(k,1821)
         lu(k,1830) = lu(k,1830) - lu(k,1579) * lu(k,1821)
         lu(k,1831) = lu(k,1831) - lu(k,1580) * lu(k,1821)
         lu(k,1832) = lu(k,1832) - lu(k,1581) * lu(k,1821)
         lu(k,1833) = lu(k,1833) - lu(k,1582) * lu(k,1821)
         lu(k,1846) = lu(k,1846) - lu(k,1571) * lu(k,1845)
         lu(k,1847) = lu(k,1847) - lu(k,1572) * lu(k,1845)
         lu(k,1848) = lu(k,1848) - lu(k,1573) * lu(k,1845)
         lu(k,1849) = lu(k,1849) - lu(k,1574) * lu(k,1845)
         lu(k,1850) = lu(k,1850) - lu(k,1575) * lu(k,1845)
         lu(k,1851) = lu(k,1851) - lu(k,1576) * lu(k,1845)
         lu(k,1852) = lu(k,1852) - lu(k,1577) * lu(k,1845)
         lu(k,1853) = lu(k,1853) - lu(k,1578) * lu(k,1845)
         lu(k,1854) = lu(k,1854) - lu(k,1579) * lu(k,1845)
         lu(k,1855) = lu(k,1855) - lu(k,1580) * lu(k,1845)
         lu(k,1856) = lu(k,1856) - lu(k,1581) * lu(k,1845)
         lu(k,1857) = lu(k,1857) - lu(k,1582) * lu(k,1845)
         lu(k,1903) = lu(k,1903) - lu(k,1571) * lu(k,1902)
         lu(k,1904) = lu(k,1904) - lu(k,1572) * lu(k,1902)
         lu(k,1905) = lu(k,1905) - lu(k,1573) * lu(k,1902)
         lu(k,1906) = lu(k,1906) - lu(k,1574) * lu(k,1902)
         lu(k,1907) = lu(k,1907) - lu(k,1575) * lu(k,1902)
         lu(k,1908) = lu(k,1908) - lu(k,1576) * lu(k,1902)
         lu(k,1909) = lu(k,1909) - lu(k,1577) * lu(k,1902)
         lu(k,1910) = lu(k,1910) - lu(k,1578) * lu(k,1902)
         lu(k,1911) = lu(k,1911) - lu(k,1579) * lu(k,1902)
         lu(k,1912) = lu(k,1912) - lu(k,1580) * lu(k,1902)
         lu(k,1913) = lu(k,1913) - lu(k,1581) * lu(k,1902)
         lu(k,1914) = lu(k,1914) - lu(k,1582) * lu(k,1902)
         lu(k,1923) = lu(k,1923) - lu(k,1571) * lu(k,1922)
         lu(k,1924) = lu(k,1924) - lu(k,1572) * lu(k,1922)
         lu(k,1925) = lu(k,1925) - lu(k,1573) * lu(k,1922)
         lu(k,1926) = lu(k,1926) - lu(k,1574) * lu(k,1922)
         lu(k,1927) = lu(k,1927) - lu(k,1575) * lu(k,1922)
         lu(k,1928) = lu(k,1928) - lu(k,1576) * lu(k,1922)
         lu(k,1929) = lu(k,1929) - lu(k,1577) * lu(k,1922)
         lu(k,1930) = lu(k,1930) - lu(k,1578) * lu(k,1922)
         lu(k,1931) = lu(k,1931) - lu(k,1579) * lu(k,1922)
         lu(k,1932) = lu(k,1932) - lu(k,1580) * lu(k,1922)
         lu(k,1933) = lu(k,1933) - lu(k,1581) * lu(k,1922)
         lu(k,1934) = lu(k,1934) - lu(k,1582) * lu(k,1922)
         lu(k,1945) = lu(k,1945) - lu(k,1571) * lu(k,1944)
         lu(k,1946) = lu(k,1946) - lu(k,1572) * lu(k,1944)
         lu(k,1947) = lu(k,1947) - lu(k,1573) * lu(k,1944)
         lu(k,1948) = lu(k,1948) - lu(k,1574) * lu(k,1944)
         lu(k,1949) = lu(k,1949) - lu(k,1575) * lu(k,1944)
         lu(k,1950) = lu(k,1950) - lu(k,1576) * lu(k,1944)
         lu(k,1951) = lu(k,1951) - lu(k,1577) * lu(k,1944)
         lu(k,1952) = lu(k,1952) - lu(k,1578) * lu(k,1944)
         lu(k,1953) = lu(k,1953) - lu(k,1579) * lu(k,1944)
         lu(k,1954) = lu(k,1954) - lu(k,1580) * lu(k,1944)
         lu(k,1955) = lu(k,1955) - lu(k,1581) * lu(k,1944)
         lu(k,1956) = lu(k,1956) - lu(k,1582) * lu(k,1944)
         lu(k,1987) = lu(k,1987) - lu(k,1571) * lu(k,1986)
         lu(k,1988) = lu(k,1988) - lu(k,1572) * lu(k,1986)
         lu(k,1989) = lu(k,1989) - lu(k,1573) * lu(k,1986)
         lu(k,1990) = lu(k,1990) - lu(k,1574) * lu(k,1986)
         lu(k,1991) = lu(k,1991) - lu(k,1575) * lu(k,1986)
         lu(k,1992) = lu(k,1992) - lu(k,1576) * lu(k,1986)
         lu(k,1993) = lu(k,1993) - lu(k,1577) * lu(k,1986)
         lu(k,1994) = lu(k,1994) - lu(k,1578) * lu(k,1986)
         lu(k,1995) = lu(k,1995) - lu(k,1579) * lu(k,1986)
         lu(k,1996) = lu(k,1996) - lu(k,1580) * lu(k,1986)
         lu(k,1997) = lu(k,1997) - lu(k,1581) * lu(k,1986)
         lu(k,1998) = lu(k,1998) - lu(k,1582) * lu(k,1986)
         lu(k,2011) = lu(k,2011) - lu(k,1571) * lu(k,2010)
         lu(k,2012) = lu(k,2012) - lu(k,1572) * lu(k,2010)
         lu(k,2013) = lu(k,2013) - lu(k,1573) * lu(k,2010)
         lu(k,2014) = lu(k,2014) - lu(k,1574) * lu(k,2010)
         lu(k,2015) = lu(k,2015) - lu(k,1575) * lu(k,2010)
         lu(k,2016) = lu(k,2016) - lu(k,1576) * lu(k,2010)
         lu(k,2017) = lu(k,2017) - lu(k,1577) * lu(k,2010)
         lu(k,2018) = lu(k,2018) - lu(k,1578) * lu(k,2010)
         lu(k,2019) = lu(k,2019) - lu(k,1579) * lu(k,2010)
         lu(k,2020) = lu(k,2020) - lu(k,1580) * lu(k,2010)
         lu(k,2021) = lu(k,2021) - lu(k,1581) * lu(k,2010)
         lu(k,2022) = lu(k,2022) - lu(k,1582) * lu(k,2010)
         lu(k,2106) = lu(k,2106) - lu(k,1571) * lu(k,2105)
         lu(k,2107) = lu(k,2107) - lu(k,1572) * lu(k,2105)
         lu(k,2108) = lu(k,2108) - lu(k,1573) * lu(k,2105)
         lu(k,2109) = lu(k,2109) - lu(k,1574) * lu(k,2105)
         lu(k,2110) = lu(k,2110) - lu(k,1575) * lu(k,2105)
         lu(k,2111) = lu(k,2111) - lu(k,1576) * lu(k,2105)
         lu(k,2112) = lu(k,2112) - lu(k,1577) * lu(k,2105)
         lu(k,2113) = lu(k,2113) - lu(k,1578) * lu(k,2105)
         lu(k,2114) = lu(k,2114) - lu(k,1579) * lu(k,2105)
         lu(k,2115) = lu(k,2115) - lu(k,1580) * lu(k,2105)
         lu(k,2116) = lu(k,2116) - lu(k,1581) * lu(k,2105)
         lu(k,2117) = lu(k,2117) - lu(k,1582) * lu(k,2105)
         lu(k,2133) = lu(k,2133) - lu(k,1571) * lu(k,2132)
         lu(k,2134) = lu(k,2134) - lu(k,1572) * lu(k,2132)
         lu(k,2135) = lu(k,2135) - lu(k,1573) * lu(k,2132)
         lu(k,2136) = lu(k,2136) - lu(k,1574) * lu(k,2132)
         lu(k,2137) = lu(k,2137) - lu(k,1575) * lu(k,2132)
         lu(k,2138) = lu(k,2138) - lu(k,1576) * lu(k,2132)
         lu(k,2139) = lu(k,2139) - lu(k,1577) * lu(k,2132)
         lu(k,2140) = lu(k,2140) - lu(k,1578) * lu(k,2132)
         lu(k,2141) = lu(k,2141) - lu(k,1579) * lu(k,2132)
         lu(k,2142) = lu(k,2142) - lu(k,1580) * lu(k,2132)
         lu(k,2143) = lu(k,2143) - lu(k,1581) * lu(k,2132)
         lu(k,2144) = lu(k,2144) - lu(k,1582) * lu(k,2132)
         lu(k,2159) = lu(k,2159) - lu(k,1571) * lu(k,2158)
         lu(k,2160) = lu(k,2160) - lu(k,1572) * lu(k,2158)
         lu(k,2161) = lu(k,2161) - lu(k,1573) * lu(k,2158)
         lu(k,2162) = lu(k,2162) - lu(k,1574) * lu(k,2158)
         lu(k,2163) = lu(k,2163) - lu(k,1575) * lu(k,2158)
         lu(k,2164) = lu(k,2164) - lu(k,1576) * lu(k,2158)
         lu(k,2165) = lu(k,2165) - lu(k,1577) * lu(k,2158)
         lu(k,2166) = lu(k,2166) - lu(k,1578) * lu(k,2158)
         lu(k,2167) = lu(k,2167) - lu(k,1579) * lu(k,2158)
         lu(k,2168) = lu(k,2168) - lu(k,1580) * lu(k,2158)
         lu(k,2169) = lu(k,2169) - lu(k,1581) * lu(k,2158)
         lu(k,2170) = lu(k,2170) - lu(k,1582) * lu(k,2158)
         lu(k,1719) = 1._r8 / lu(k,1719)
         lu(k,1720) = lu(k,1720) * lu(k,1719)
         lu(k,1721) = lu(k,1721) * lu(k,1719)
         lu(k,1722) = lu(k,1722) * lu(k,1719)
         lu(k,1723) = lu(k,1723) * lu(k,1719)
         lu(k,1724) = lu(k,1724) * lu(k,1719)
         lu(k,1725) = lu(k,1725) * lu(k,1719)
         lu(k,1726) = lu(k,1726) * lu(k,1719)
         lu(k,1727) = lu(k,1727) * lu(k,1719)
         lu(k,1728) = lu(k,1728) * lu(k,1719)
         lu(k,1729) = lu(k,1729) * lu(k,1719)
         lu(k,1730) = lu(k,1730) * lu(k,1719)
         lu(k,1782) = lu(k,1782) - lu(k,1720) * lu(k,1781)
         lu(k,1783) = lu(k,1783) - lu(k,1721) * lu(k,1781)
         lu(k,1784) = lu(k,1784) - lu(k,1722) * lu(k,1781)
         lu(k,1785) = lu(k,1785) - lu(k,1723) * lu(k,1781)
         lu(k,1786) = lu(k,1786) - lu(k,1724) * lu(k,1781)
         lu(k,1787) = lu(k,1787) - lu(k,1725) * lu(k,1781)
         lu(k,1788) = lu(k,1788) - lu(k,1726) * lu(k,1781)
         lu(k,1789) = lu(k,1789) - lu(k,1727) * lu(k,1781)
         lu(k,1790) = lu(k,1790) - lu(k,1728) * lu(k,1781)
         lu(k,1791) = lu(k,1791) - lu(k,1729) * lu(k,1781)
         lu(k,1792) = lu(k,1792) - lu(k,1730) * lu(k,1781)
         lu(k,1823) = lu(k,1823) - lu(k,1720) * lu(k,1822)
         lu(k,1824) = lu(k,1824) - lu(k,1721) * lu(k,1822)
         lu(k,1825) = lu(k,1825) - lu(k,1722) * lu(k,1822)
         lu(k,1826) = lu(k,1826) - lu(k,1723) * lu(k,1822)
         lu(k,1827) = lu(k,1827) - lu(k,1724) * lu(k,1822)
         lu(k,1828) = lu(k,1828) - lu(k,1725) * lu(k,1822)
         lu(k,1829) = lu(k,1829) - lu(k,1726) * lu(k,1822)
         lu(k,1830) = lu(k,1830) - lu(k,1727) * lu(k,1822)
         lu(k,1831) = lu(k,1831) - lu(k,1728) * lu(k,1822)
         lu(k,1832) = lu(k,1832) - lu(k,1729) * lu(k,1822)
         lu(k,1833) = lu(k,1833) - lu(k,1730) * lu(k,1822)
         lu(k,1847) = lu(k,1847) - lu(k,1720) * lu(k,1846)
         lu(k,1848) = lu(k,1848) - lu(k,1721) * lu(k,1846)
         lu(k,1849) = lu(k,1849) - lu(k,1722) * lu(k,1846)
         lu(k,1850) = lu(k,1850) - lu(k,1723) * lu(k,1846)
         lu(k,1851) = lu(k,1851) - lu(k,1724) * lu(k,1846)
         lu(k,1852) = lu(k,1852) - lu(k,1725) * lu(k,1846)
         lu(k,1853) = lu(k,1853) - lu(k,1726) * lu(k,1846)
         lu(k,1854) = lu(k,1854) - lu(k,1727) * lu(k,1846)
         lu(k,1855) = lu(k,1855) - lu(k,1728) * lu(k,1846)
         lu(k,1856) = lu(k,1856) - lu(k,1729) * lu(k,1846)
         lu(k,1857) = lu(k,1857) - lu(k,1730) * lu(k,1846)
         lu(k,1904) = lu(k,1904) - lu(k,1720) * lu(k,1903)
         lu(k,1905) = lu(k,1905) - lu(k,1721) * lu(k,1903)
         lu(k,1906) = lu(k,1906) - lu(k,1722) * lu(k,1903)
         lu(k,1907) = lu(k,1907) - lu(k,1723) * lu(k,1903)
         lu(k,1908) = lu(k,1908) - lu(k,1724) * lu(k,1903)
         lu(k,1909) = lu(k,1909) - lu(k,1725) * lu(k,1903)
         lu(k,1910) = lu(k,1910) - lu(k,1726) * lu(k,1903)
         lu(k,1911) = lu(k,1911) - lu(k,1727) * lu(k,1903)
         lu(k,1912) = lu(k,1912) - lu(k,1728) * lu(k,1903)
         lu(k,1913) = lu(k,1913) - lu(k,1729) * lu(k,1903)
         lu(k,1914) = lu(k,1914) - lu(k,1730) * lu(k,1903)
         lu(k,1924) = lu(k,1924) - lu(k,1720) * lu(k,1923)
         lu(k,1925) = lu(k,1925) - lu(k,1721) * lu(k,1923)
         lu(k,1926) = lu(k,1926) - lu(k,1722) * lu(k,1923)
         lu(k,1927) = lu(k,1927) - lu(k,1723) * lu(k,1923)
         lu(k,1928) = lu(k,1928) - lu(k,1724) * lu(k,1923)
         lu(k,1929) = lu(k,1929) - lu(k,1725) * lu(k,1923)
         lu(k,1930) = lu(k,1930) - lu(k,1726) * lu(k,1923)
         lu(k,1931) = lu(k,1931) - lu(k,1727) * lu(k,1923)
         lu(k,1932) = lu(k,1932) - lu(k,1728) * lu(k,1923)
         lu(k,1933) = lu(k,1933) - lu(k,1729) * lu(k,1923)
         lu(k,1934) = lu(k,1934) - lu(k,1730) * lu(k,1923)
         lu(k,1946) = lu(k,1946) - lu(k,1720) * lu(k,1945)
         lu(k,1947) = lu(k,1947) - lu(k,1721) * lu(k,1945)
         lu(k,1948) = lu(k,1948) - lu(k,1722) * lu(k,1945)
         lu(k,1949) = lu(k,1949) - lu(k,1723) * lu(k,1945)
         lu(k,1950) = lu(k,1950) - lu(k,1724) * lu(k,1945)
         lu(k,1951) = lu(k,1951) - lu(k,1725) * lu(k,1945)
         lu(k,1952) = lu(k,1952) - lu(k,1726) * lu(k,1945)
         lu(k,1953) = lu(k,1953) - lu(k,1727) * lu(k,1945)
         lu(k,1954) = lu(k,1954) - lu(k,1728) * lu(k,1945)
         lu(k,1955) = lu(k,1955) - lu(k,1729) * lu(k,1945)
         lu(k,1956) = lu(k,1956) - lu(k,1730) * lu(k,1945)
         lu(k,1988) = lu(k,1988) - lu(k,1720) * lu(k,1987)
         lu(k,1989) = lu(k,1989) - lu(k,1721) * lu(k,1987)
         lu(k,1990) = lu(k,1990) - lu(k,1722) * lu(k,1987)
         lu(k,1991) = lu(k,1991) - lu(k,1723) * lu(k,1987)
         lu(k,1992) = lu(k,1992) - lu(k,1724) * lu(k,1987)
         lu(k,1993) = lu(k,1993) - lu(k,1725) * lu(k,1987)
         lu(k,1994) = lu(k,1994) - lu(k,1726) * lu(k,1987)
         lu(k,1995) = lu(k,1995) - lu(k,1727) * lu(k,1987)
         lu(k,1996) = lu(k,1996) - lu(k,1728) * lu(k,1987)
         lu(k,1997) = lu(k,1997) - lu(k,1729) * lu(k,1987)
         lu(k,1998) = lu(k,1998) - lu(k,1730) * lu(k,1987)
         lu(k,2012) = lu(k,2012) - lu(k,1720) * lu(k,2011)
         lu(k,2013) = lu(k,2013) - lu(k,1721) * lu(k,2011)
         lu(k,2014) = lu(k,2014) - lu(k,1722) * lu(k,2011)
         lu(k,2015) = lu(k,2015) - lu(k,1723) * lu(k,2011)
         lu(k,2016) = lu(k,2016) - lu(k,1724) * lu(k,2011)
         lu(k,2017) = lu(k,2017) - lu(k,1725) * lu(k,2011)
         lu(k,2018) = lu(k,2018) - lu(k,1726) * lu(k,2011)
         lu(k,2019) = lu(k,2019) - lu(k,1727) * lu(k,2011)
         lu(k,2020) = lu(k,2020) - lu(k,1728) * lu(k,2011)
         lu(k,2021) = lu(k,2021) - lu(k,1729) * lu(k,2011)
         lu(k,2022) = lu(k,2022) - lu(k,1730) * lu(k,2011)
         lu(k,2107) = lu(k,2107) - lu(k,1720) * lu(k,2106)
         lu(k,2108) = lu(k,2108) - lu(k,1721) * lu(k,2106)
         lu(k,2109) = lu(k,2109) - lu(k,1722) * lu(k,2106)
         lu(k,2110) = lu(k,2110) - lu(k,1723) * lu(k,2106)
         lu(k,2111) = lu(k,2111) - lu(k,1724) * lu(k,2106)
         lu(k,2112) = lu(k,2112) - lu(k,1725) * lu(k,2106)
         lu(k,2113) = lu(k,2113) - lu(k,1726) * lu(k,2106)
         lu(k,2114) = lu(k,2114) - lu(k,1727) * lu(k,2106)
         lu(k,2115) = lu(k,2115) - lu(k,1728) * lu(k,2106)
         lu(k,2116) = lu(k,2116) - lu(k,1729) * lu(k,2106)
         lu(k,2117) = lu(k,2117) - lu(k,1730) * lu(k,2106)
         lu(k,2134) = lu(k,2134) - lu(k,1720) * lu(k,2133)
         lu(k,2135) = lu(k,2135) - lu(k,1721) * lu(k,2133)
         lu(k,2136) = lu(k,2136) - lu(k,1722) * lu(k,2133)
         lu(k,2137) = lu(k,2137) - lu(k,1723) * lu(k,2133)
         lu(k,2138) = lu(k,2138) - lu(k,1724) * lu(k,2133)
         lu(k,2139) = lu(k,2139) - lu(k,1725) * lu(k,2133)
         lu(k,2140) = lu(k,2140) - lu(k,1726) * lu(k,2133)
         lu(k,2141) = lu(k,2141) - lu(k,1727) * lu(k,2133)
         lu(k,2142) = lu(k,2142) - lu(k,1728) * lu(k,2133)
         lu(k,2143) = lu(k,2143) - lu(k,1729) * lu(k,2133)
         lu(k,2144) = lu(k,2144) - lu(k,1730) * lu(k,2133)
         lu(k,2160) = lu(k,2160) - lu(k,1720) * lu(k,2159)
         lu(k,2161) = lu(k,2161) - lu(k,1721) * lu(k,2159)
         lu(k,2162) = lu(k,2162) - lu(k,1722) * lu(k,2159)
         lu(k,2163) = lu(k,2163) - lu(k,1723) * lu(k,2159)
         lu(k,2164) = lu(k,2164) - lu(k,1724) * lu(k,2159)
         lu(k,2165) = lu(k,2165) - lu(k,1725) * lu(k,2159)
         lu(k,2166) = lu(k,2166) - lu(k,1726) * lu(k,2159)
         lu(k,2167) = lu(k,2167) - lu(k,1727) * lu(k,2159)
         lu(k,2168) = lu(k,2168) - lu(k,1728) * lu(k,2159)
         lu(k,2169) = lu(k,2169) - lu(k,1729) * lu(k,2159)
         lu(k,2170) = lu(k,2170) - lu(k,1730) * lu(k,2159)
      end do
      end subroutine lu_fac28
      subroutine lu_fac29( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1782) = 1._r8 / lu(k,1782)
         lu(k,1783) = lu(k,1783) * lu(k,1782)
         lu(k,1784) = lu(k,1784) * lu(k,1782)
         lu(k,1785) = lu(k,1785) * lu(k,1782)
         lu(k,1786) = lu(k,1786) * lu(k,1782)
         lu(k,1787) = lu(k,1787) * lu(k,1782)
         lu(k,1788) = lu(k,1788) * lu(k,1782)
         lu(k,1789) = lu(k,1789) * lu(k,1782)
         lu(k,1790) = lu(k,1790) * lu(k,1782)
         lu(k,1791) = lu(k,1791) * lu(k,1782)
         lu(k,1792) = lu(k,1792) * lu(k,1782)
         lu(k,1824) = lu(k,1824) - lu(k,1783) * lu(k,1823)
         lu(k,1825) = lu(k,1825) - lu(k,1784) * lu(k,1823)
         lu(k,1826) = lu(k,1826) - lu(k,1785) * lu(k,1823)
         lu(k,1827) = lu(k,1827) - lu(k,1786) * lu(k,1823)
         lu(k,1828) = lu(k,1828) - lu(k,1787) * lu(k,1823)
         lu(k,1829) = lu(k,1829) - lu(k,1788) * lu(k,1823)
         lu(k,1830) = lu(k,1830) - lu(k,1789) * lu(k,1823)
         lu(k,1831) = lu(k,1831) - lu(k,1790) * lu(k,1823)
         lu(k,1832) = lu(k,1832) - lu(k,1791) * lu(k,1823)
         lu(k,1833) = lu(k,1833) - lu(k,1792) * lu(k,1823)
         lu(k,1848) = lu(k,1848) - lu(k,1783) * lu(k,1847)
         lu(k,1849) = lu(k,1849) - lu(k,1784) * lu(k,1847)
         lu(k,1850) = lu(k,1850) - lu(k,1785) * lu(k,1847)
         lu(k,1851) = lu(k,1851) - lu(k,1786) * lu(k,1847)
         lu(k,1852) = lu(k,1852) - lu(k,1787) * lu(k,1847)
         lu(k,1853) = lu(k,1853) - lu(k,1788) * lu(k,1847)
         lu(k,1854) = lu(k,1854) - lu(k,1789) * lu(k,1847)
         lu(k,1855) = lu(k,1855) - lu(k,1790) * lu(k,1847)
         lu(k,1856) = lu(k,1856) - lu(k,1791) * lu(k,1847)
         lu(k,1857) = lu(k,1857) - lu(k,1792) * lu(k,1847)
         lu(k,1905) = lu(k,1905) - lu(k,1783) * lu(k,1904)
         lu(k,1906) = lu(k,1906) - lu(k,1784) * lu(k,1904)
         lu(k,1907) = lu(k,1907) - lu(k,1785) * lu(k,1904)
         lu(k,1908) = lu(k,1908) - lu(k,1786) * lu(k,1904)
         lu(k,1909) = lu(k,1909) - lu(k,1787) * lu(k,1904)
         lu(k,1910) = lu(k,1910) - lu(k,1788) * lu(k,1904)
         lu(k,1911) = lu(k,1911) - lu(k,1789) * lu(k,1904)
         lu(k,1912) = lu(k,1912) - lu(k,1790) * lu(k,1904)
         lu(k,1913) = lu(k,1913) - lu(k,1791) * lu(k,1904)
         lu(k,1914) = lu(k,1914) - lu(k,1792) * lu(k,1904)
         lu(k,1925) = lu(k,1925) - lu(k,1783) * lu(k,1924)
         lu(k,1926) = lu(k,1926) - lu(k,1784) * lu(k,1924)
         lu(k,1927) = lu(k,1927) - lu(k,1785) * lu(k,1924)
         lu(k,1928) = lu(k,1928) - lu(k,1786) * lu(k,1924)
         lu(k,1929) = lu(k,1929) - lu(k,1787) * lu(k,1924)
         lu(k,1930) = lu(k,1930) - lu(k,1788) * lu(k,1924)
         lu(k,1931) = lu(k,1931) - lu(k,1789) * lu(k,1924)
         lu(k,1932) = lu(k,1932) - lu(k,1790) * lu(k,1924)
         lu(k,1933) = lu(k,1933) - lu(k,1791) * lu(k,1924)
         lu(k,1934) = lu(k,1934) - lu(k,1792) * lu(k,1924)
         lu(k,1947) = lu(k,1947) - lu(k,1783) * lu(k,1946)
         lu(k,1948) = lu(k,1948) - lu(k,1784) * lu(k,1946)
         lu(k,1949) = lu(k,1949) - lu(k,1785) * lu(k,1946)
         lu(k,1950) = lu(k,1950) - lu(k,1786) * lu(k,1946)
         lu(k,1951) = lu(k,1951) - lu(k,1787) * lu(k,1946)
         lu(k,1952) = lu(k,1952) - lu(k,1788) * lu(k,1946)
         lu(k,1953) = lu(k,1953) - lu(k,1789) * lu(k,1946)
         lu(k,1954) = lu(k,1954) - lu(k,1790) * lu(k,1946)
         lu(k,1955) = lu(k,1955) - lu(k,1791) * lu(k,1946)
         lu(k,1956) = lu(k,1956) - lu(k,1792) * lu(k,1946)
         lu(k,1989) = lu(k,1989) - lu(k,1783) * lu(k,1988)
         lu(k,1990) = lu(k,1990) - lu(k,1784) * lu(k,1988)
         lu(k,1991) = lu(k,1991) - lu(k,1785) * lu(k,1988)
         lu(k,1992) = lu(k,1992) - lu(k,1786) * lu(k,1988)
         lu(k,1993) = lu(k,1993) - lu(k,1787) * lu(k,1988)
         lu(k,1994) = lu(k,1994) - lu(k,1788) * lu(k,1988)
         lu(k,1995) = lu(k,1995) - lu(k,1789) * lu(k,1988)
         lu(k,1996) = lu(k,1996) - lu(k,1790) * lu(k,1988)
         lu(k,1997) = lu(k,1997) - lu(k,1791) * lu(k,1988)
         lu(k,1998) = lu(k,1998) - lu(k,1792) * lu(k,1988)
         lu(k,2013) = lu(k,2013) - lu(k,1783) * lu(k,2012)
         lu(k,2014) = lu(k,2014) - lu(k,1784) * lu(k,2012)
         lu(k,2015) = lu(k,2015) - lu(k,1785) * lu(k,2012)
         lu(k,2016) = lu(k,2016) - lu(k,1786) * lu(k,2012)
         lu(k,2017) = lu(k,2017) - lu(k,1787) * lu(k,2012)
         lu(k,2018) = lu(k,2018) - lu(k,1788) * lu(k,2012)
         lu(k,2019) = lu(k,2019) - lu(k,1789) * lu(k,2012)
         lu(k,2020) = lu(k,2020) - lu(k,1790) * lu(k,2012)
         lu(k,2021) = lu(k,2021) - lu(k,1791) * lu(k,2012)
         lu(k,2022) = lu(k,2022) - lu(k,1792) * lu(k,2012)
         lu(k,2108) = lu(k,2108) - lu(k,1783) * lu(k,2107)
         lu(k,2109) = lu(k,2109) - lu(k,1784) * lu(k,2107)
         lu(k,2110) = lu(k,2110) - lu(k,1785) * lu(k,2107)
         lu(k,2111) = lu(k,2111) - lu(k,1786) * lu(k,2107)
         lu(k,2112) = lu(k,2112) - lu(k,1787) * lu(k,2107)
         lu(k,2113) = lu(k,2113) - lu(k,1788) * lu(k,2107)
         lu(k,2114) = lu(k,2114) - lu(k,1789) * lu(k,2107)
         lu(k,2115) = lu(k,2115) - lu(k,1790) * lu(k,2107)
         lu(k,2116) = lu(k,2116) - lu(k,1791) * lu(k,2107)
         lu(k,2117) = lu(k,2117) - lu(k,1792) * lu(k,2107)
         lu(k,2135) = lu(k,2135) - lu(k,1783) * lu(k,2134)
         lu(k,2136) = lu(k,2136) - lu(k,1784) * lu(k,2134)
         lu(k,2137) = lu(k,2137) - lu(k,1785) * lu(k,2134)
         lu(k,2138) = lu(k,2138) - lu(k,1786) * lu(k,2134)
         lu(k,2139) = lu(k,2139) - lu(k,1787) * lu(k,2134)
         lu(k,2140) = lu(k,2140) - lu(k,1788) * lu(k,2134)
         lu(k,2141) = lu(k,2141) - lu(k,1789) * lu(k,2134)
         lu(k,2142) = lu(k,2142) - lu(k,1790) * lu(k,2134)
         lu(k,2143) = lu(k,2143) - lu(k,1791) * lu(k,2134)
         lu(k,2144) = lu(k,2144) - lu(k,1792) * lu(k,2134)
         lu(k,2161) = lu(k,2161) - lu(k,1783) * lu(k,2160)
         lu(k,2162) = lu(k,2162) - lu(k,1784) * lu(k,2160)
         lu(k,2163) = lu(k,2163) - lu(k,1785) * lu(k,2160)
         lu(k,2164) = lu(k,2164) - lu(k,1786) * lu(k,2160)
         lu(k,2165) = lu(k,2165) - lu(k,1787) * lu(k,2160)
         lu(k,2166) = lu(k,2166) - lu(k,1788) * lu(k,2160)
         lu(k,2167) = lu(k,2167) - lu(k,1789) * lu(k,2160)
         lu(k,2168) = lu(k,2168) - lu(k,1790) * lu(k,2160)
         lu(k,2169) = lu(k,2169) - lu(k,1791) * lu(k,2160)
         lu(k,2170) = lu(k,2170) - lu(k,1792) * lu(k,2160)
         lu(k,1824) = 1._r8 / lu(k,1824)
         lu(k,1825) = lu(k,1825) * lu(k,1824)
         lu(k,1826) = lu(k,1826) * lu(k,1824)
         lu(k,1827) = lu(k,1827) * lu(k,1824)
         lu(k,1828) = lu(k,1828) * lu(k,1824)
         lu(k,1829) = lu(k,1829) * lu(k,1824)
         lu(k,1830) = lu(k,1830) * lu(k,1824)
         lu(k,1831) = lu(k,1831) * lu(k,1824)
         lu(k,1832) = lu(k,1832) * lu(k,1824)
         lu(k,1833) = lu(k,1833) * lu(k,1824)
         lu(k,1849) = lu(k,1849) - lu(k,1825) * lu(k,1848)
         lu(k,1850) = lu(k,1850) - lu(k,1826) * lu(k,1848)
         lu(k,1851) = lu(k,1851) - lu(k,1827) * lu(k,1848)
         lu(k,1852) = lu(k,1852) - lu(k,1828) * lu(k,1848)
         lu(k,1853) = lu(k,1853) - lu(k,1829) * lu(k,1848)
         lu(k,1854) = lu(k,1854) - lu(k,1830) * lu(k,1848)
         lu(k,1855) = lu(k,1855) - lu(k,1831) * lu(k,1848)
         lu(k,1856) = lu(k,1856) - lu(k,1832) * lu(k,1848)
         lu(k,1857) = lu(k,1857) - lu(k,1833) * lu(k,1848)
         lu(k,1906) = lu(k,1906) - lu(k,1825) * lu(k,1905)
         lu(k,1907) = lu(k,1907) - lu(k,1826) * lu(k,1905)
         lu(k,1908) = lu(k,1908) - lu(k,1827) * lu(k,1905)
         lu(k,1909) = lu(k,1909) - lu(k,1828) * lu(k,1905)
         lu(k,1910) = lu(k,1910) - lu(k,1829) * lu(k,1905)
         lu(k,1911) = lu(k,1911) - lu(k,1830) * lu(k,1905)
         lu(k,1912) = lu(k,1912) - lu(k,1831) * lu(k,1905)
         lu(k,1913) = lu(k,1913) - lu(k,1832) * lu(k,1905)
         lu(k,1914) = lu(k,1914) - lu(k,1833) * lu(k,1905)
         lu(k,1926) = lu(k,1926) - lu(k,1825) * lu(k,1925)
         lu(k,1927) = lu(k,1927) - lu(k,1826) * lu(k,1925)
         lu(k,1928) = lu(k,1928) - lu(k,1827) * lu(k,1925)
         lu(k,1929) = lu(k,1929) - lu(k,1828) * lu(k,1925)
         lu(k,1930) = lu(k,1930) - lu(k,1829) * lu(k,1925)
         lu(k,1931) = lu(k,1931) - lu(k,1830) * lu(k,1925)
         lu(k,1932) = lu(k,1932) - lu(k,1831) * lu(k,1925)
         lu(k,1933) = lu(k,1933) - lu(k,1832) * lu(k,1925)
         lu(k,1934) = lu(k,1934) - lu(k,1833) * lu(k,1925)
         lu(k,1948) = lu(k,1948) - lu(k,1825) * lu(k,1947)
         lu(k,1949) = lu(k,1949) - lu(k,1826) * lu(k,1947)
         lu(k,1950) = lu(k,1950) - lu(k,1827) * lu(k,1947)
         lu(k,1951) = lu(k,1951) - lu(k,1828) * lu(k,1947)
         lu(k,1952) = lu(k,1952) - lu(k,1829) * lu(k,1947)
         lu(k,1953) = lu(k,1953) - lu(k,1830) * lu(k,1947)
         lu(k,1954) = lu(k,1954) - lu(k,1831) * lu(k,1947)
         lu(k,1955) = lu(k,1955) - lu(k,1832) * lu(k,1947)
         lu(k,1956) = lu(k,1956) - lu(k,1833) * lu(k,1947)
         lu(k,1990) = lu(k,1990) - lu(k,1825) * lu(k,1989)
         lu(k,1991) = lu(k,1991) - lu(k,1826) * lu(k,1989)
         lu(k,1992) = lu(k,1992) - lu(k,1827) * lu(k,1989)
         lu(k,1993) = lu(k,1993) - lu(k,1828) * lu(k,1989)
         lu(k,1994) = lu(k,1994) - lu(k,1829) * lu(k,1989)
         lu(k,1995) = lu(k,1995) - lu(k,1830) * lu(k,1989)
         lu(k,1996) = lu(k,1996) - lu(k,1831) * lu(k,1989)
         lu(k,1997) = lu(k,1997) - lu(k,1832) * lu(k,1989)
         lu(k,1998) = lu(k,1998) - lu(k,1833) * lu(k,1989)
         lu(k,2014) = lu(k,2014) - lu(k,1825) * lu(k,2013)
         lu(k,2015) = lu(k,2015) - lu(k,1826) * lu(k,2013)
         lu(k,2016) = lu(k,2016) - lu(k,1827) * lu(k,2013)
         lu(k,2017) = lu(k,2017) - lu(k,1828) * lu(k,2013)
         lu(k,2018) = lu(k,2018) - lu(k,1829) * lu(k,2013)
         lu(k,2019) = lu(k,2019) - lu(k,1830) * lu(k,2013)
         lu(k,2020) = lu(k,2020) - lu(k,1831) * lu(k,2013)
         lu(k,2021) = lu(k,2021) - lu(k,1832) * lu(k,2013)
         lu(k,2022) = lu(k,2022) - lu(k,1833) * lu(k,2013)
         lu(k,2109) = lu(k,2109) - lu(k,1825) * lu(k,2108)
         lu(k,2110) = lu(k,2110) - lu(k,1826) * lu(k,2108)
         lu(k,2111) = lu(k,2111) - lu(k,1827) * lu(k,2108)
         lu(k,2112) = lu(k,2112) - lu(k,1828) * lu(k,2108)
         lu(k,2113) = lu(k,2113) - lu(k,1829) * lu(k,2108)
         lu(k,2114) = lu(k,2114) - lu(k,1830) * lu(k,2108)
         lu(k,2115) = lu(k,2115) - lu(k,1831) * lu(k,2108)
         lu(k,2116) = lu(k,2116) - lu(k,1832) * lu(k,2108)
         lu(k,2117) = lu(k,2117) - lu(k,1833) * lu(k,2108)
         lu(k,2136) = lu(k,2136) - lu(k,1825) * lu(k,2135)
         lu(k,2137) = lu(k,2137) - lu(k,1826) * lu(k,2135)
         lu(k,2138) = lu(k,2138) - lu(k,1827) * lu(k,2135)
         lu(k,2139) = lu(k,2139) - lu(k,1828) * lu(k,2135)
         lu(k,2140) = lu(k,2140) - lu(k,1829) * lu(k,2135)
         lu(k,2141) = lu(k,2141) - lu(k,1830) * lu(k,2135)
         lu(k,2142) = lu(k,2142) - lu(k,1831) * lu(k,2135)
         lu(k,2143) = lu(k,2143) - lu(k,1832) * lu(k,2135)
         lu(k,2144) = lu(k,2144) - lu(k,1833) * lu(k,2135)
         lu(k,2162) = lu(k,2162) - lu(k,1825) * lu(k,2161)
         lu(k,2163) = lu(k,2163) - lu(k,1826) * lu(k,2161)
         lu(k,2164) = lu(k,2164) - lu(k,1827) * lu(k,2161)
         lu(k,2165) = lu(k,2165) - lu(k,1828) * lu(k,2161)
         lu(k,2166) = lu(k,2166) - lu(k,1829) * lu(k,2161)
         lu(k,2167) = lu(k,2167) - lu(k,1830) * lu(k,2161)
         lu(k,2168) = lu(k,2168) - lu(k,1831) * lu(k,2161)
         lu(k,2169) = lu(k,2169) - lu(k,1832) * lu(k,2161)
         lu(k,2170) = lu(k,2170) - lu(k,1833) * lu(k,2161)
         lu(k,1849) = 1._r8 / lu(k,1849)
         lu(k,1850) = lu(k,1850) * lu(k,1849)
         lu(k,1851) = lu(k,1851) * lu(k,1849)
         lu(k,1852) = lu(k,1852) * lu(k,1849)
         lu(k,1853) = lu(k,1853) * lu(k,1849)
         lu(k,1854) = lu(k,1854) * lu(k,1849)
         lu(k,1855) = lu(k,1855) * lu(k,1849)
         lu(k,1856) = lu(k,1856) * lu(k,1849)
         lu(k,1857) = lu(k,1857) * lu(k,1849)
         lu(k,1907) = lu(k,1907) - lu(k,1850) * lu(k,1906)
         lu(k,1908) = lu(k,1908) - lu(k,1851) * lu(k,1906)
         lu(k,1909) = lu(k,1909) - lu(k,1852) * lu(k,1906)
         lu(k,1910) = lu(k,1910) - lu(k,1853) * lu(k,1906)
         lu(k,1911) = lu(k,1911) - lu(k,1854) * lu(k,1906)
         lu(k,1912) = lu(k,1912) - lu(k,1855) * lu(k,1906)
         lu(k,1913) = lu(k,1913) - lu(k,1856) * lu(k,1906)
         lu(k,1914) = lu(k,1914) - lu(k,1857) * lu(k,1906)
         lu(k,1927) = lu(k,1927) - lu(k,1850) * lu(k,1926)
         lu(k,1928) = lu(k,1928) - lu(k,1851) * lu(k,1926)
         lu(k,1929) = lu(k,1929) - lu(k,1852) * lu(k,1926)
         lu(k,1930) = lu(k,1930) - lu(k,1853) * lu(k,1926)
         lu(k,1931) = lu(k,1931) - lu(k,1854) * lu(k,1926)
         lu(k,1932) = lu(k,1932) - lu(k,1855) * lu(k,1926)
         lu(k,1933) = lu(k,1933) - lu(k,1856) * lu(k,1926)
         lu(k,1934) = lu(k,1934) - lu(k,1857) * lu(k,1926)
         lu(k,1949) = lu(k,1949) - lu(k,1850) * lu(k,1948)
         lu(k,1950) = lu(k,1950) - lu(k,1851) * lu(k,1948)
         lu(k,1951) = lu(k,1951) - lu(k,1852) * lu(k,1948)
         lu(k,1952) = lu(k,1952) - lu(k,1853) * lu(k,1948)
         lu(k,1953) = lu(k,1953) - lu(k,1854) * lu(k,1948)
         lu(k,1954) = lu(k,1954) - lu(k,1855) * lu(k,1948)
         lu(k,1955) = lu(k,1955) - lu(k,1856) * lu(k,1948)
         lu(k,1956) = lu(k,1956) - lu(k,1857) * lu(k,1948)
         lu(k,1991) = lu(k,1991) - lu(k,1850) * lu(k,1990)
         lu(k,1992) = lu(k,1992) - lu(k,1851) * lu(k,1990)
         lu(k,1993) = lu(k,1993) - lu(k,1852) * lu(k,1990)
         lu(k,1994) = lu(k,1994) - lu(k,1853) * lu(k,1990)
         lu(k,1995) = lu(k,1995) - lu(k,1854) * lu(k,1990)
         lu(k,1996) = lu(k,1996) - lu(k,1855) * lu(k,1990)
         lu(k,1997) = lu(k,1997) - lu(k,1856) * lu(k,1990)
         lu(k,1998) = lu(k,1998) - lu(k,1857) * lu(k,1990)
         lu(k,2015) = lu(k,2015) - lu(k,1850) * lu(k,2014)
         lu(k,2016) = lu(k,2016) - lu(k,1851) * lu(k,2014)
         lu(k,2017) = lu(k,2017) - lu(k,1852) * lu(k,2014)
         lu(k,2018) = lu(k,2018) - lu(k,1853) * lu(k,2014)
         lu(k,2019) = lu(k,2019) - lu(k,1854) * lu(k,2014)
         lu(k,2020) = lu(k,2020) - lu(k,1855) * lu(k,2014)
         lu(k,2021) = lu(k,2021) - lu(k,1856) * lu(k,2014)
         lu(k,2022) = lu(k,2022) - lu(k,1857) * lu(k,2014)
         lu(k,2110) = lu(k,2110) - lu(k,1850) * lu(k,2109)
         lu(k,2111) = lu(k,2111) - lu(k,1851) * lu(k,2109)
         lu(k,2112) = lu(k,2112) - lu(k,1852) * lu(k,2109)
         lu(k,2113) = lu(k,2113) - lu(k,1853) * lu(k,2109)
         lu(k,2114) = lu(k,2114) - lu(k,1854) * lu(k,2109)
         lu(k,2115) = lu(k,2115) - lu(k,1855) * lu(k,2109)
         lu(k,2116) = lu(k,2116) - lu(k,1856) * lu(k,2109)
         lu(k,2117) = lu(k,2117) - lu(k,1857) * lu(k,2109)
         lu(k,2137) = lu(k,2137) - lu(k,1850) * lu(k,2136)
         lu(k,2138) = lu(k,2138) - lu(k,1851) * lu(k,2136)
         lu(k,2139) = lu(k,2139) - lu(k,1852) * lu(k,2136)
         lu(k,2140) = lu(k,2140) - lu(k,1853) * lu(k,2136)
         lu(k,2141) = lu(k,2141) - lu(k,1854) * lu(k,2136)
         lu(k,2142) = lu(k,2142) - lu(k,1855) * lu(k,2136)
         lu(k,2143) = lu(k,2143) - lu(k,1856) * lu(k,2136)
         lu(k,2144) = lu(k,2144) - lu(k,1857) * lu(k,2136)
         lu(k,2163) = lu(k,2163) - lu(k,1850) * lu(k,2162)
         lu(k,2164) = lu(k,2164) - lu(k,1851) * lu(k,2162)
         lu(k,2165) = lu(k,2165) - lu(k,1852) * lu(k,2162)
         lu(k,2166) = lu(k,2166) - lu(k,1853) * lu(k,2162)
         lu(k,2167) = lu(k,2167) - lu(k,1854) * lu(k,2162)
         lu(k,2168) = lu(k,2168) - lu(k,1855) * lu(k,2162)
         lu(k,2169) = lu(k,2169) - lu(k,1856) * lu(k,2162)
         lu(k,2170) = lu(k,2170) - lu(k,1857) * lu(k,2162)
         lu(k,1907) = 1._r8 / lu(k,1907)
         lu(k,1908) = lu(k,1908) * lu(k,1907)
         lu(k,1909) = lu(k,1909) * lu(k,1907)
         lu(k,1910) = lu(k,1910) * lu(k,1907)
         lu(k,1911) = lu(k,1911) * lu(k,1907)
         lu(k,1912) = lu(k,1912) * lu(k,1907)
         lu(k,1913) = lu(k,1913) * lu(k,1907)
         lu(k,1914) = lu(k,1914) * lu(k,1907)
         lu(k,1928) = lu(k,1928) - lu(k,1908) * lu(k,1927)
         lu(k,1929) = lu(k,1929) - lu(k,1909) * lu(k,1927)
         lu(k,1930) = lu(k,1930) - lu(k,1910) * lu(k,1927)
         lu(k,1931) = lu(k,1931) - lu(k,1911) * lu(k,1927)
         lu(k,1932) = lu(k,1932) - lu(k,1912) * lu(k,1927)
         lu(k,1933) = lu(k,1933) - lu(k,1913) * lu(k,1927)
         lu(k,1934) = lu(k,1934) - lu(k,1914) * lu(k,1927)
         lu(k,1950) = lu(k,1950) - lu(k,1908) * lu(k,1949)
         lu(k,1951) = lu(k,1951) - lu(k,1909) * lu(k,1949)
         lu(k,1952) = lu(k,1952) - lu(k,1910) * lu(k,1949)
         lu(k,1953) = lu(k,1953) - lu(k,1911) * lu(k,1949)
         lu(k,1954) = lu(k,1954) - lu(k,1912) * lu(k,1949)
         lu(k,1955) = lu(k,1955) - lu(k,1913) * lu(k,1949)
         lu(k,1956) = lu(k,1956) - lu(k,1914) * lu(k,1949)
         lu(k,1992) = lu(k,1992) - lu(k,1908) * lu(k,1991)
         lu(k,1993) = lu(k,1993) - lu(k,1909) * lu(k,1991)
         lu(k,1994) = lu(k,1994) - lu(k,1910) * lu(k,1991)
         lu(k,1995) = lu(k,1995) - lu(k,1911) * lu(k,1991)
         lu(k,1996) = lu(k,1996) - lu(k,1912) * lu(k,1991)
         lu(k,1997) = lu(k,1997) - lu(k,1913) * lu(k,1991)
         lu(k,1998) = lu(k,1998) - lu(k,1914) * lu(k,1991)
         lu(k,2016) = lu(k,2016) - lu(k,1908) * lu(k,2015)
         lu(k,2017) = lu(k,2017) - lu(k,1909) * lu(k,2015)
         lu(k,2018) = lu(k,2018) - lu(k,1910) * lu(k,2015)
         lu(k,2019) = lu(k,2019) - lu(k,1911) * lu(k,2015)
         lu(k,2020) = lu(k,2020) - lu(k,1912) * lu(k,2015)
         lu(k,2021) = lu(k,2021) - lu(k,1913) * lu(k,2015)
         lu(k,2022) = lu(k,2022) - lu(k,1914) * lu(k,2015)
         lu(k,2111) = lu(k,2111) - lu(k,1908) * lu(k,2110)
         lu(k,2112) = lu(k,2112) - lu(k,1909) * lu(k,2110)
         lu(k,2113) = lu(k,2113) - lu(k,1910) * lu(k,2110)
         lu(k,2114) = lu(k,2114) - lu(k,1911) * lu(k,2110)
         lu(k,2115) = lu(k,2115) - lu(k,1912) * lu(k,2110)
         lu(k,2116) = lu(k,2116) - lu(k,1913) * lu(k,2110)
         lu(k,2117) = lu(k,2117) - lu(k,1914) * lu(k,2110)
         lu(k,2138) = lu(k,2138) - lu(k,1908) * lu(k,2137)
         lu(k,2139) = lu(k,2139) - lu(k,1909) * lu(k,2137)
         lu(k,2140) = lu(k,2140) - lu(k,1910) * lu(k,2137)
         lu(k,2141) = lu(k,2141) - lu(k,1911) * lu(k,2137)
         lu(k,2142) = lu(k,2142) - lu(k,1912) * lu(k,2137)
         lu(k,2143) = lu(k,2143) - lu(k,1913) * lu(k,2137)
         lu(k,2144) = lu(k,2144) - lu(k,1914) * lu(k,2137)
         lu(k,2164) = lu(k,2164) - lu(k,1908) * lu(k,2163)
         lu(k,2165) = lu(k,2165) - lu(k,1909) * lu(k,2163)
         lu(k,2166) = lu(k,2166) - lu(k,1910) * lu(k,2163)
         lu(k,2167) = lu(k,2167) - lu(k,1911) * lu(k,2163)
         lu(k,2168) = lu(k,2168) - lu(k,1912) * lu(k,2163)
         lu(k,2169) = lu(k,2169) - lu(k,1913) * lu(k,2163)
         lu(k,2170) = lu(k,2170) - lu(k,1914) * lu(k,2163)
         lu(k,1928) = 1._r8 / lu(k,1928)
         lu(k,1929) = lu(k,1929) * lu(k,1928)
         lu(k,1930) = lu(k,1930) * lu(k,1928)
         lu(k,1931) = lu(k,1931) * lu(k,1928)
         lu(k,1932) = lu(k,1932) * lu(k,1928)
         lu(k,1933) = lu(k,1933) * lu(k,1928)
         lu(k,1934) = lu(k,1934) * lu(k,1928)
         lu(k,1951) = lu(k,1951) - lu(k,1929) * lu(k,1950)
         lu(k,1952) = lu(k,1952) - lu(k,1930) * lu(k,1950)
         lu(k,1953) = lu(k,1953) - lu(k,1931) * lu(k,1950)
         lu(k,1954) = lu(k,1954) - lu(k,1932) * lu(k,1950)
         lu(k,1955) = lu(k,1955) - lu(k,1933) * lu(k,1950)
         lu(k,1956) = lu(k,1956) - lu(k,1934) * lu(k,1950)
         lu(k,1993) = lu(k,1993) - lu(k,1929) * lu(k,1992)
         lu(k,1994) = lu(k,1994) - lu(k,1930) * lu(k,1992)
         lu(k,1995) = lu(k,1995) - lu(k,1931) * lu(k,1992)
         lu(k,1996) = lu(k,1996) - lu(k,1932) * lu(k,1992)
         lu(k,1997) = lu(k,1997) - lu(k,1933) * lu(k,1992)
         lu(k,1998) = lu(k,1998) - lu(k,1934) * lu(k,1992)
         lu(k,2017) = lu(k,2017) - lu(k,1929) * lu(k,2016)
         lu(k,2018) = lu(k,2018) - lu(k,1930) * lu(k,2016)
         lu(k,2019) = lu(k,2019) - lu(k,1931) * lu(k,2016)
         lu(k,2020) = lu(k,2020) - lu(k,1932) * lu(k,2016)
         lu(k,2021) = lu(k,2021) - lu(k,1933) * lu(k,2016)
         lu(k,2022) = lu(k,2022) - lu(k,1934) * lu(k,2016)
         lu(k,2112) = lu(k,2112) - lu(k,1929) * lu(k,2111)
         lu(k,2113) = lu(k,2113) - lu(k,1930) * lu(k,2111)
         lu(k,2114) = lu(k,2114) - lu(k,1931) * lu(k,2111)
         lu(k,2115) = lu(k,2115) - lu(k,1932) * lu(k,2111)
         lu(k,2116) = lu(k,2116) - lu(k,1933) * lu(k,2111)
         lu(k,2117) = lu(k,2117) - lu(k,1934) * lu(k,2111)
         lu(k,2139) = lu(k,2139) - lu(k,1929) * lu(k,2138)
         lu(k,2140) = lu(k,2140) - lu(k,1930) * lu(k,2138)
         lu(k,2141) = lu(k,2141) - lu(k,1931) * lu(k,2138)
         lu(k,2142) = lu(k,2142) - lu(k,1932) * lu(k,2138)
         lu(k,2143) = lu(k,2143) - lu(k,1933) * lu(k,2138)
         lu(k,2144) = lu(k,2144) - lu(k,1934) * lu(k,2138)
         lu(k,2165) = lu(k,2165) - lu(k,1929) * lu(k,2164)
         lu(k,2166) = lu(k,2166) - lu(k,1930) * lu(k,2164)
         lu(k,2167) = lu(k,2167) - lu(k,1931) * lu(k,2164)
         lu(k,2168) = lu(k,2168) - lu(k,1932) * lu(k,2164)
         lu(k,2169) = lu(k,2169) - lu(k,1933) * lu(k,2164)
         lu(k,2170) = lu(k,2170) - lu(k,1934) * lu(k,2164)
         lu(k,1951) = 1._r8 / lu(k,1951)
         lu(k,1952) = lu(k,1952) * lu(k,1951)
         lu(k,1953) = lu(k,1953) * lu(k,1951)
         lu(k,1954) = lu(k,1954) * lu(k,1951)
         lu(k,1955) = lu(k,1955) * lu(k,1951)
         lu(k,1956) = lu(k,1956) * lu(k,1951)
         lu(k,1994) = lu(k,1994) - lu(k,1952) * lu(k,1993)
         lu(k,1995) = lu(k,1995) - lu(k,1953) * lu(k,1993)
         lu(k,1996) = lu(k,1996) - lu(k,1954) * lu(k,1993)
         lu(k,1997) = lu(k,1997) - lu(k,1955) * lu(k,1993)
         lu(k,1998) = lu(k,1998) - lu(k,1956) * lu(k,1993)
         lu(k,2018) = lu(k,2018) - lu(k,1952) * lu(k,2017)
         lu(k,2019) = lu(k,2019) - lu(k,1953) * lu(k,2017)
         lu(k,2020) = lu(k,2020) - lu(k,1954) * lu(k,2017)
         lu(k,2021) = lu(k,2021) - lu(k,1955) * lu(k,2017)
         lu(k,2022) = lu(k,2022) - lu(k,1956) * lu(k,2017)
         lu(k,2113) = lu(k,2113) - lu(k,1952) * lu(k,2112)
         lu(k,2114) = lu(k,2114) - lu(k,1953) * lu(k,2112)
         lu(k,2115) = lu(k,2115) - lu(k,1954) * lu(k,2112)
         lu(k,2116) = lu(k,2116) - lu(k,1955) * lu(k,2112)
         lu(k,2117) = lu(k,2117) - lu(k,1956) * lu(k,2112)
         lu(k,2140) = lu(k,2140) - lu(k,1952) * lu(k,2139)
         lu(k,2141) = lu(k,2141) - lu(k,1953) * lu(k,2139)
         lu(k,2142) = lu(k,2142) - lu(k,1954) * lu(k,2139)
         lu(k,2143) = lu(k,2143) - lu(k,1955) * lu(k,2139)
         lu(k,2144) = lu(k,2144) - lu(k,1956) * lu(k,2139)
         lu(k,2166) = lu(k,2166) - lu(k,1952) * lu(k,2165)
         lu(k,2167) = lu(k,2167) - lu(k,1953) * lu(k,2165)
         lu(k,2168) = lu(k,2168) - lu(k,1954) * lu(k,2165)
         lu(k,2169) = lu(k,2169) - lu(k,1955) * lu(k,2165)
         lu(k,2170) = lu(k,2170) - lu(k,1956) * lu(k,2165)
      end do
      end subroutine lu_fac29
      subroutine lu_fac30( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
!-----------------------------------------------------------------------
! ... local variables
!-----------------------------------------------------------------------
      integer :: k
      do k = 1,avec_len
         lu(k,1994) = 1._r8 / lu(k,1994)
         lu(k,1995) = lu(k,1995) * lu(k,1994)
         lu(k,1996) = lu(k,1996) * lu(k,1994)
         lu(k,1997) = lu(k,1997) * lu(k,1994)
         lu(k,1998) = lu(k,1998) * lu(k,1994)
         lu(k,2019) = lu(k,2019) - lu(k,1995) * lu(k,2018)
         lu(k,2020) = lu(k,2020) - lu(k,1996) * lu(k,2018)
         lu(k,2021) = lu(k,2021) - lu(k,1997) * lu(k,2018)
         lu(k,2022) = lu(k,2022) - lu(k,1998) * lu(k,2018)
         lu(k,2114) = lu(k,2114) - lu(k,1995) * lu(k,2113)
         lu(k,2115) = lu(k,2115) - lu(k,1996) * lu(k,2113)
         lu(k,2116) = lu(k,2116) - lu(k,1997) * lu(k,2113)
         lu(k,2117) = lu(k,2117) - lu(k,1998) * lu(k,2113)
         lu(k,2141) = lu(k,2141) - lu(k,1995) * lu(k,2140)
         lu(k,2142) = lu(k,2142) - lu(k,1996) * lu(k,2140)
         lu(k,2143) = lu(k,2143) - lu(k,1997) * lu(k,2140)
         lu(k,2144) = lu(k,2144) - lu(k,1998) * lu(k,2140)
         lu(k,2167) = lu(k,2167) - lu(k,1995) * lu(k,2166)
         lu(k,2168) = lu(k,2168) - lu(k,1996) * lu(k,2166)
         lu(k,2169) = lu(k,2169) - lu(k,1997) * lu(k,2166)
         lu(k,2170) = lu(k,2170) - lu(k,1998) * lu(k,2166)
         lu(k,2019) = 1._r8 / lu(k,2019)
         lu(k,2020) = lu(k,2020) * lu(k,2019)
         lu(k,2021) = lu(k,2021) * lu(k,2019)
         lu(k,2022) = lu(k,2022) * lu(k,2019)
         lu(k,2115) = lu(k,2115) - lu(k,2020) * lu(k,2114)
         lu(k,2116) = lu(k,2116) - lu(k,2021) * lu(k,2114)
         lu(k,2117) = lu(k,2117) - lu(k,2022) * lu(k,2114)
         lu(k,2142) = lu(k,2142) - lu(k,2020) * lu(k,2141)
         lu(k,2143) = lu(k,2143) - lu(k,2021) * lu(k,2141)
         lu(k,2144) = lu(k,2144) - lu(k,2022) * lu(k,2141)
         lu(k,2168) = lu(k,2168) - lu(k,2020) * lu(k,2167)
         lu(k,2169) = lu(k,2169) - lu(k,2021) * lu(k,2167)
         lu(k,2170) = lu(k,2170) - lu(k,2022) * lu(k,2167)
         lu(k,2115) = 1._r8 / lu(k,2115)
         lu(k,2116) = lu(k,2116) * lu(k,2115)
         lu(k,2117) = lu(k,2117) * lu(k,2115)
         lu(k,2143) = lu(k,2143) - lu(k,2116) * lu(k,2142)
         lu(k,2144) = lu(k,2144) - lu(k,2117) * lu(k,2142)
         lu(k,2169) = lu(k,2169) - lu(k,2116) * lu(k,2168)
         lu(k,2170) = lu(k,2170) - lu(k,2117) * lu(k,2168)
         lu(k,2143) = 1._r8 / lu(k,2143)
         lu(k,2144) = lu(k,2144) * lu(k,2143)
         lu(k,2170) = lu(k,2170) - lu(k,2144) * lu(k,2169)
         lu(k,2170) = 1._r8 / lu(k,2170)
      end do
      end subroutine lu_fac30
      subroutine lu_fac( avec_len, lu )
      use chem_mods, only : nzcnt
      use shr_kind_mod, only : r8 => shr_kind_r8
      implicit none
!-----------------------------------------------------------------------
! ... dummy args
!-----------------------------------------------------------------------
      integer, intent(in) :: avec_len
      real(r8), intent(inout) :: lu(veclen,nzcnt)
      call lu_fac01( avec_len, lu )
      call lu_fac02( avec_len, lu )
      call lu_fac03( avec_len, lu )
      call lu_fac04( avec_len, lu )
      call lu_fac05( avec_len, lu )
      call lu_fac06( avec_len, lu )
      call lu_fac07( avec_len, lu )
      call lu_fac08( avec_len, lu )
      call lu_fac09( avec_len, lu )
      call lu_fac10( avec_len, lu )
      call lu_fac11( avec_len, lu )
      call lu_fac12( avec_len, lu )
      call lu_fac13( avec_len, lu )
      call lu_fac14( avec_len, lu )
      call lu_fac15( avec_len, lu )
      call lu_fac16( avec_len, lu )
      call lu_fac17( avec_len, lu )
      call lu_fac18( avec_len, lu )
      call lu_fac19( avec_len, lu )
      call lu_fac20( avec_len, lu )
      call lu_fac21( avec_len, lu )
      call lu_fac22( avec_len, lu )
      call lu_fac23( avec_len, lu )
      call lu_fac24( avec_len, lu )
      call lu_fac25( avec_len, lu )
      call lu_fac26( avec_len, lu )
      call lu_fac27( avec_len, lu )
      call lu_fac28( avec_len, lu )
      call lu_fac29( avec_len, lu )
      call lu_fac30( avec_len, lu )
      end subroutine lu_fac
      end module mo_lu_factor
